查看数据库
show databases;创建数据库
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] *db_name *[*create_option*] ...
*create_option*: [DEFAULT] {
CHARACTER SET [=] *charset_name *
| COLLATE [=] *collation_name *
| ENCRYPTION [=] {'Y' | 'N'}
}
举个例子:
create database test character set utf8;
或者
create database test charset=utf8;-
大写部分表示关键字
-
db_name:表示自定义的数据库名 -
{}大括号表示必选项 -
|表示任选其中一个 -
[]中括号表示是可选项 -
CHARACTERSET:指定数据库采用的字符集编码 -
COLLATE:指定数据库字符集的校验规则 -
ENCRYPTION:数据库是否加密,MySQL8.0.16中引入的新选项
查看警告信息
show warnings;查看数据库支持的字符集编码
MySQL8.0 默认的字符集编码是 utf8mb4,MySQL5.7 默认的字符集是 latin1。
utf8mb4编码是对Unicode字符集的一种实现,用1到4个字节表示一个字符,可以表示世界上几乎所有的字符,⽽且更节约空间。
show charset;查看数据库支持的校验规则
MySQL8.0 默认的排序规则是 utf8mb4_0900_ai_ci,MySQL5.7 默认排序规则是 utf8mb4_general_ci。
0900是基于UCA 9.0.0算法,UCA是Unicode Collation Algorithm的缩写
ai是Accent-insensitive的缩写,表示口音不敏感
as是Accent-sensitive的缩写,表示口音敏感
ci是Case-insensitive的缩写,表示大小写不敏感
cs是Case-sensitive的缩写,表示大小写敏感
bin表示二进制
show collation;查看系统默认字符集和排序规则
show variables like '%character%';
show variables like '%collation%';查看创建语句
show create database 库名;查看数据库连接情况
show processlist;使用数据库
use 库名;有时候可能我们使用时间长了,不知道当前在使用那个数据库,那么我们可以调用一个 database() 函数,如下所示:
select database();删除数据库
drop database [if exists] db_name;注意:不要随意删除数据库 !
修改数据库
ALTER {DATABASE | SCHEMA} [*db_name*]
*alter_option* ...
*alter_option*: {
[DEFAULT] CHARACTER SET [=] *charset_name *
| [DEFAULT] COLLATE [=] *collation_name *
| [DEFAULT] ENCRYPTION [=] {'Y' | 'N'}
| READ ONLY [=] {DEFAULT | 0 | 1}
}备份库
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径(一般备份为.sql文件)
举个例子:
mysqldump -P3306 -uroot -p -B db1 > db1.sql恢复库
source 数据库备份存储的文件路径(即sql文件的位置);注意:如果备份一个数据库时,没有带上 -B 参数,在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用 source 来还原 。