1.desc '表名' -- 查看表结构

MySQL基本命令 (一)_基本命令


2.show create table '表名' -- 查看建表语句

MySQL基本命令 (一)_基本命令_02


3.grant select, insert on '数据库名.表名' to '用户名'@'数据库地址' identified by '密码' -- 创建新用户并授权


4.revoke insert on '数据库名.表名' from '用户名'@'数据库地址' -- 回收权限


5.? contents -- 获取MySQL自带帮助文档目录

MySQL基本命令 (一)_MySQL_03


6.? '关键字' -- 获取关于此关键字的用法

MySQL基本命令 (一)_MySQL_04


7.unsigned属性可以指定为无符号int,可以增加一倍的容量

MySQL基本命令 (一)_基本命令_05


8.BIT数据类型在select的时候只能用bin()或者hex()函数查询

MySQL基本命令 (一)_基本命令_06


9.show engines -- 查询当前数据库支持的引擎

MySQL基本命令 (一)_基本命令_07


10.alter table '表名' engine = innodb -- 修改表的引擎


11.alter table '表名' AUTO_INCREMENT=n -- 强制设置自增长列的初始值为n,但只保留在内存中,使用前数据库如果重启则失效


12.创建外键约束时的RESTRICT、CASCADE和SET NULL

RESTRICT表示如果在子表存在关联记录时,父表不能更新或删除用于关联的记录。

CASCADE表示父表更新或删除用于关联的记录时,子表同时更新或删除。

SET NULL表示父表更新或删除用于关联的记录时,子表的外键会设置为null。

KEY `fk_employee_company` (`employee_company_id`),
  CONSTRAINT `fk_employee_company` FOREIGN KEY (`employee_company_id`) REFERENCES `company` (`company_id`) ON UPDATE CASCADE ON DELETE RESTRICT


13. set foreign_key_checks = 0 -- 关闭外键检查,可以让我们先插入子表数据,再插入父表数据


14. show character set -- 显示MySQL可用的字符集

MySQL基本命令 (一)_基本命令_08


15. optimize table '表名' -- 对表进行碎片整理

InnoDB引擎的删除默认是标记删除,也就是说运行delete命令时不会从硬盘上直接删除。所以数据库文件会越变越大。特别是当我们使用了blog、text等格式时尤为明显。

create table optimize_test(
    id int,
    content text
);#创建数据库
insert into optimize_test values(1, repeat('A' ,1000));
insert into optimize_test values(2, repeat('A' ,1000));
insert into optimize_test values(3, repeat('A' ,1000));
insert into optimize_test select * from optimize_test;#运行几次生成多条数据

我们先看看数据库大小

MySQL基本命令 (一)_基本命令_09

然后我们删除表中id=1的数据,发现数据库的大小并没有改变

MySQL基本命令 (一)_基本命令_10

optimize table optimize_test;

MySQL基本命令 (一)_基本命令_11

运行optimize table后,数据库大小减少了1/3


16. show collation like 'UTF8%' -- 获取字符集的校验规则

MySQL基本命令 (一)_MySQL_12

Default='Yes'表示utf8编码默认使用该校验规则,'%_ci'表示大小写不敏感,'%_cs'表示大小写敏感,'%_bin'表示将字符串每个字符串用二进制数据编译存储。区分大小写,而且可以存二进制的内容。


17. show variables like 'character_set_server' -- 查询服务器的字符集


18. show variables like 'collation_server' -- 查询服务器的字符集校对规则


19. show variables like 'character_set_database' -- 查询当前数据库的字符集


20. show variables like 'collation_database' -- 查询当前数据库的字符集校对规则