Mysql系列 - mysql基础知识

本文主要内容

1.背景介绍
2.数据库基础知识介绍
3.mysql的安装
4.mysql常用的一些命令介绍
5.SQL分类

背景介绍

我们每天都在访问各种网站、APP,如微信、QQ、抖音、今日头条、腾讯新闻等,这些东西上面都存在大量的信息,这些信息都需要有地方存储,存储在哪呢?数据库。

所以如果我们需要开发一个网站、app,数据库我们必须掌握的技术,常用的数据库有mysql、oracle、sqlserver、db2等。

上面介绍的几个数据库,oracle性能排名第一,服务也是相当到位的,但是收费也是非常高的,金融公司对数据库稳定性要求比较高,一般会选择oracle。

mysql是免费的,其他几个目前暂时收费的,mysql在互联网公司使用率也是排名第一,资料也非常完善,社区也非常活跃,所以我们主要学习mysql。

mysql系列我们主要介绍
  • mysql的基本使用
  • mysql性能优化
  • 开发过程中mysql一些优秀的案例介绍
数据库常见的概念

DB:数据库,存储数据的容器。

DBMS:数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理DB。

SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库软件持有的,而是几乎所有的主流数据库软件通用的语言。中国人之间交流需要说汉语,和美国人之间交流需要说英语,和数据库沟通需要说SQL语言。

数据库存储数据的一些特点

数据存放在表中,然后表存放在数据库中。一个库中可以有多张表,每张表具有唯一的名称(表名)来标识自己。表中有一个或多个列,列又称为“字段”,相当于java中的“属性”。表中每一行数据,相当于java中的“对象”。

安装mysql

官网下载mysql5.7.25:
https://dev.mysql.com/downloads/mysql/5.7.html#downloads

linux中安装mysql
windows中安装mysql

mysql常用的一些命令
mysql启动2种方式
方式1:

cmd中运行services.msc

在这里插入图片描述

会打开服务窗口,在服务窗口中找到mysql服务,点击右键可以启动或者停止

在这里插入图片描述
在这里插入图片描述
方式2

以管理员身份运行cmd命令
在这里插入图片描述

停止命令:net stop mysql
启动命令:net start mysql
C:\Windows\system32>net stop mysql
mysql 服务正在停止.
mysql 服务已成功停止。


C:\Windows\system32>net start mysql
mysql 服务正在启动 .
mysql 服务已经启动成功。
注意:命令后面没有结束符号
mysql登录命令
mysql -h ip -P 端口 -u 用户名 -p
C:\Windows\system32>mysql -h localhost -P 3306 -u root -p
Enter password: *******
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.7.25-log MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
说明:
  • -P 大写的P后面跟上端口

  • 如果是登录本金ip和端口可以省略,如:

mysql -u 用户名 -p
  • 可以通过上面的命令连接原创机器的mysql
查看数据库版本
mysql --version 或者mysql -V用于在未登录情况下,查看本机mysql版本:
C:\Windows\system32>mysql -V
mysql  Ver 14.14 Distrib 5.7.25, for Win64 (x86_64)

C:\Windows\system32>mysql --version
mysql  Ver 14.14 Distrib 5.7.25, for Win64 (x86_64)
select version();:登录情况下,查看链接的库版本:
mysql> select version();
+------------+
| version()  |
+------------+
| 5.7.25-log |
+------------+
1 row in set (0.00 sec)
显示所有数据库:show databases;
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| apolloconfigdb     |
| apolloportaldb     |
| config-server      |
| dblog              |
| diamond_devtest    |
| mysql              |
| nacos_config       |
| performance_schema |
| rs_elastic_job     |
| rs_master          |
| seata              |
| sys                |
+--------------------+
13 rows in set (0.00 sec)
进入指定的库:use 库名;
mysql> use seata;
Database changed
显示当前库中所有的表:show tables;
mysql> show tables;
+--------------------+
| Tables_in_dblog    |
+--------------------+
| biz_article        |
| biz_article_look   |
| biz_article_love   |
| biz_article_tags   |
| biz_comment        |
| biz_file           |
| biz_tags           |
| biz_type           |
| sys_config         |
| sys_link           |
| sys_log            |
| sys_notice         |
| sys_resources      |
| sys_role           |
| sys_role_resources |
| sys_template       |
| sys_update_recorde |
| sys_user           |
| sys_user_role      |
+--------------------+
19 rows in set (0.00 sec)
查看其他库中所有的表:show tables from 库名;
mysql> show tables from seata;
+-----------------+
| Tables_in_seata |
+-----------------+
| branch_table    |
| global_table    |
| lock_table      |
| t_account       |
| t_order         |
| t_storage       |
| undo_log        |
+-----------------+
7 rows in set (0.00 sec)
查看表的创建语句:show create table 表名;
mysql> show create table biz_tags;
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table    | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| biz_tags | CREATE TABLE `biz_tags` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL COMMENT '书签名',
  `description` varchar(100) DEFAULT NULL COMMENT '描述',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
  `update_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT              |
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
查看表结构:desc 表名;
mysql> desc biz_tags;
+-------------+---------------------+------+-----+-------------------+----------------+
| Field       | Type                | Null | Key | Default           | Extra          |
+-------------+---------------------+------+-----+-------------------+----------------+
| id          | bigint(20) unsigned | NO   | PRI | NULL              | auto_increment |
| name        | varchar(50)         | NO   |     | NULL              |                |
| description | varchar(100)        | YES  |     | NULL              |                |
| create_time | datetime            | YES  |     | CURRENT_TIMESTAMP |                |
| update_time | datetime            | YES  |     | CURRENT_TIMESTAMP |                |
+-------------+---------------------+------+-----+-------------------+----------------+
5 rows in set (0.00 sec)
查看当前所在库:select database();
C:\Windows\system32>mysql -h localhost -P 3306 -u root -p
Enter password: *******
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.25-log MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> select database();
+------------+
| database() |
+------------+
| NULL       |
+------------+
1 row in set (0.00 sec)

mysql> use dblog;
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| dblog      |
+------------+
1 row in set (0.00 sec)
mysql语法规范

1.不区分大小写,但建议关键字大写,表名、列名小写
2.每条命令最好用英文分号结尾
3.每条命令根据需要,可以进行缩进或换行
4.注释

  • 单行注释:#注释文字
  • 单行注释:-- 注释文字 ,注意, 这里需要加空格
  • 多行注释:/ 注释文字 /
SQL的语言分类
  • DQL(Data Query Language):数据查询语言
    select 相关语句
  • DML(Data Manipulate Language):数据操作语言
    insert 、update、delete 语句
  • DDL(Data Define Languge):数据定义语言
    create、drop、alter 语句
  • TCL(Transaction Control Language):事务控制语言
    set autocommit=0、start transaction、savepoint、commit、rollback
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值