数据库的操作
所有操作命令:
//创建数据库
create database 数据库名字 charset=utf8 collate utf8_general_ci
//查看字符集
show charset;
//查看校验规则
show collation;
//查看所有的数据库。
show databases;
//显示创建语句
show create database 数据库名;
// 修改数据库
alter database 数据库名字 charset=gbk collte ...;
// 删除数据库
drop database 数据库名字;
// 备份
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
// 恢复
source 路径;查看连接情况
该目录是Linux下储存数据库的默认路径。
/var/lib/mysql
理论上是说可以 以Linux命令行的方式对数据库增删改(但是是绝对禁止的)
也就是对数据库的 增 删 查 改
增
create database 数据库名字 [create_specification]
create_specification:
[DEFAULT] CHARACTER SET charset_name // 设置数据库字符集
[DEFAULT] COLLATE collation_name // 设置校验集
create database db
当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则是:utf8_ general_ ci。
也可以指定字符集和校验规则:
**create database db charset=gbk;**
当你指定了数据库字符集之后,校验规则会自动指定为字符集对应的校验规则,反之亦然。
查看字符集
show charset;
查看校验规则
show collation;
字符集(CHARSET) :给定一系列字符并赋予对应的编码后,所有这些字符和编码对组成的集合就是字符集(Character Set)。
校验规则(COLLATE ) : 是指在同一字符集内字符之间的比较规则;确定比较规则后,才能在一个字符集上定义什么是等价的字符,以及字符之间的大小关系;
查
查看所有的数据库。
show databases;
显示创建语句
show create database 数据库名;
改
对数据库的修改主要指的是修改数据库的字符集,校验规则。
alter database 数据库名字 charset=gbk collte ...;
删
drop database 数据库名字;
执行删除之后的结果:
- 数据库内部看不到对应的数据库
- 对应的数据库文件夹被删除,级联删除,里面的数据表全部被删
注意:不要随意删除数据库
备份和恢复
备份
备份数据库:
数据库服务的默认接口为3306,如果不对,需要修改一下配置文件
/etc/my.cnf
退出mysql,在Linux命令行下敲击此命令。
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
同时备份多个数据库
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径
登录mysql,运行此命令:
恢复
mysql> source 路径;
备份表:
mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql
注意:
如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原
没有带上 -B选项,在备份至文件时,文件内容不会存在创建数据库的那一句MySQL语句。
备份文件内容包括:操作过数据库的所有语句和数据库的数据。