输入
mysql -h 127.0.0.1 -P 3306 -u root -p
或
mysql -u root
-- -h 和 -p 会用默认值
都可进入MySQL程序
数据库命令
mysql> show databases;
--下面类似
查看所有库
create database [数据库名];
创建库
drop [IF EXISTS] database [数据库名];
删除库( [IF EXISTS] 可省略)
show create database [库名];
显示库的创建语句
关于字符集语法
show variables like 'character_set_database';
show variables like 'collation_database';
查看库的默认字符集以及校验规则
alter database [数据库名] character set utf8;
修改库的字符集
alter database [数据库名] collate utf8_general_ci;
修改库的校验规则
alter database [数据库名] character set utf8 collate utf8_general_ci;
同时修改
mysql> show charset;
查看数据库支持的字符集
mysql> show collation;
查看数据库支持的校验规则
表操作语法
举例表结构
字段名称 | 字段类型 | 是否NULL | 键值 | 默认值 | 附加信息 |
---|---|---|---|---|---|
Field | Type | Null | Key | Default | Extra |
id | int | No | UNI(唯一键) | Null | auto_increment |
name | verchar(10) | No | PRI(主键) | Null | |
gender | enum | No | man | ||
age | tinyint | Yes | Null | ||
telphone | int | Yes | Null | ||
home_id | int | yes | MUL(外键) | Null |
创建表
mysql> CREATE TABLE table_name (
-> field1 datatype,
-> field2 datatype,
-> field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
- field 表示列名
- datatype 表示列的类型
- character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
- collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
查看表结构
desc [表名];
修改表
修改表名
alter table [原表名] rename [to] [新表名];
’to‘ 可省略
增加字段
alter table [表名] add [字段名] [字段类型];
同时修改字段名和字段数据类型
alter table [表命] change [旧字段名] [新字段名] [字段类型];
仅修改字段数据类型
alter table [表名] modify [字段名] [新的字段类型];
删除字段
alter table text_1 drop age;
删除表
drop table [表名];
备份和恢复
备份
mysqldump -P3306 -u root -p [密码] -B [数据库名1] [数据库名2] [...] > [数据库备份存储的文件路径]
备份数据库
列:推出mysql后 将mytest库备份到文件
mysqldump -P3306 -u root -p123456 -B mytest > D:/mytest.sql
如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原
mysqldump -u root -p [数据库名] [表名1] [表名2] [...] > D:/mytest.sql
备份表
恢复
mysql> source D:/mysql-5.7.22/mytest.sql;
show processlist
查看MySQL连接情况