### 文章目录
- [@[TOC](文章目录)](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [一、操作语句](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [1.增](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [2.删](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [3.改](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [4.查](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [5.备份](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
- [二、字符集与校验规则](#文章目录 @TOC 一、操作语句 1.增 2.删 3.改 4.查 5.备份 二、字符集与校验规则)
一、操作语句
1.增
语句格式:create database [if no exists]数据库名[create_specification [,create_specification] ...];
中括号内是可选项,if no exists是指如果数据库不存在就创建,存在就不创建,相当于自动查重. create_specification 可以指定数据库的编码格式和校验规则.
2.删
drop database 数据库名;
3.改
alter database 数据库名 指定项;可以更改数据库指定的字符集
4.查
show databases;可查看所有数据库
use 数据库名;选定要使用的数据库
select database();查看当前在那个数据库中.
show processlist;可以查看当前谁在使用mysql;
5.备份
创建一个数据库,然后退出mysql,用命令mysqldump -P3306 -uroot -B 数据库名 > 备份文件路径.将数据备份至指定的路径下的文件中.数据库后面跟多个数据库名,可以同时备份多个数据库.如果备份的是表,则在数据库后面跟上表名即可,不过恢复的时候首先要自己创建一个数据库.-B的选项其实就是备份数据中有创建数据库的命令.
恢复时,进入mysql程序,用语句:source 备份文件路径;即可将数据恢复.数据库备份的数据其实是创建数据库时的命令,恢复数据就是将数据库的命令在当前程序中再执行一次.
二、字符集与校验规则
创建数据库时有指定字符集和校验规则的选项;字符集就是数据存储时的编码格式,校验规则就是提取数据时校验编码格式的方法;在/etc/my.cnf配置文件中有character-set-server=utf8的配置信息,就是在配置数据库模式使用的字符集.
使用show charset;可以查看支持的字符集
使用show collation;可以查看支持的校验规则.
相同的字符集,不同的校验规则,提取的数据也会不同.例如字符集utf8,校验规则utf8_general_ci;索引提取数据时不区分大写,utf8_bin;则区分大小写;
首先用相同字符集,不同的校验规则创建两个数据库,分别在两个数据库中创建两个person表
分别在两个表中插入相同的数据'a','A','B','b'
将两个表都排序,所得到的结果是不一样的,db1不区分大小写,所以A和a都排在前面,db2区分大小写,按照ascll码值比较小写全部排在大写的后面.
按照名字小写查询db1不管大小写都返回,db2只返回小写;