一·:连接数据库
mysql -h 127.0.0.1 -P 3306 -u root -p
注:
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
create database db1;
当创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,默认校验规:utf8_general_ci。
create database db2 charset=utf8;
create database db3 charset=utf8 collate utf8_general_ci;
字符集
查看系统默认字符集:
show variables like 'character_set_database';
查看数据库支持的字符集:
show charset;
查看数据库支持的字符集校验规则:
show collation;
校验规则对数据库的影响:
//创建数据库db1,校验规则为utf8_ general_ ci
create database db1 collate utf8_general_ci;
use test2;
//创建student表
create table student(name char(20));
//向表中添加值
insert into student values('a');
insert into student values('A');
insert into student values('b');
insert into student values('B');
//查询所有name为'a'的值
select * from student where name='a';
select * from student order by name;
//创建数据库db1,校验规则为utf8_bin
create database db2 collate utf8_bin;
use db2;
//创建student表
create table student(name char(20));
//向表中添加值
insert into student values('a');
insert into student values('A');
insert into student values('B');
insert into student values('b');
//查询表中值为'a'
select * from student where name='a';
//对名字从小到大排序(order默认从小到大排序)
select * from student order by name;
操纵数据库
查看数据库:
show databases;
show create database 数据库名;
修改数据库
ALTER DATABASE db_name
[alter_spacification [,alter_spacification]...]
alter_spacification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
对数据库的修改主要是修改数据库的字符集和校验规则。
如:将数据库javacode字符集修改为gbk
数据库删除
DROP DATABASE [IF EXISTS] db_ name;
将数据库删除后,数据库内部看不到对应的数据库,对应的数据库文件夹被删除,级联删除,里面的数据表全部被删除。所以,删数据库的时候要慎重。
数据库备份和恢复
备份:
# mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的⽂件路径
如:将javacode库备份到文件:
# msldum -P3306 -u root -p******** -B javacode> ./javacode.sql
这时javacode.sql文件包含整个数据库,表,导入的数据。
还原:
mysql> source D:/mysql-5.7.22/javacode.sql;
备份表(不备份整个数据库)
# mysqldump -u root -p 数据库名 表名1 表名2 > 表存放路径
同时备份多个数据库
# mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径
如果备份⼀个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使⽤数据库,再使⽤source来还原。