实验--增删改查
create database qindatabase; #创建数据库(每创建一个数据库,在/var/lib/mysql/里创建一个文件夹)
show databases; #查看数据库
use qindatabase; #使用数据库
create table qintable(id int(2),name varchar(10),mail varchar(2)); #创建表
show tables
desc qintable; #查看表的结构
insert into qintable(id,name,mail) values(1,'qin1','qin1@qin.com'); #插入数据(如果每列都插入数据就不用加字段名)
select * from qintable;
insert into qintable(id,name) values(1,'qin3') #插入两列数据
insert into qinntable values(5,'qin5','qin5@qin.com'),(6,'qin6','qin6@qin.com'); #可以一次插入多行数据
delete from qintable where id=4; #删除一行数据
update qintable set name='bing' where id=2; #修改数据
create table qin1 like qintabe; #直接调用别的表的结构
desc qin;
insert into qint1 select * from qntable; #也可以直接插入别的表的数据
select * from qin1;
create table qin2 as select * from qintable; #直接把别的表的结构和数据都拷过来
select * form qin2;
alter table qintable add newlist varchar(20); #修改表的结构,插入一列
select * from qintable;
alter table qintable drop newlist; #删除newlist这一列
alter table qintable add firstlist varchar(20) first; #把firstlist这一列添加到第一列
alter table qintable add afterid varchar(20) after id; #添加afterid这一列到id的后面
delete from qin1; #删的只是数据,表的结构还在
truncate qin3; #和delete很像,删除数据,但是这个比delete更狠,可以删除硬盘上的标
show tables;
drop table qin1; #drop直接把表的数据和结构都给删了
show tables;
drop database qindatabase; #删除数据库
show database;
实验--从文件里向MySQL导数据,例如:
1,qin1,qin1@qin.com
2,qin2,qin2@qin.com
3,qin3,qin3@qin.com
4,,qin4@qin.com
5,qin5,
create table qintable(id int(4),name varchar(10),email varchar(20));
load data infile '/qin.txt' into table qintable fields terminated by ',' lines terminated by '\n'; #以“,”为分隔符 以回车键为结尾
select * from qintable;
select * from qintable into outfile '/var/lib/mysql/qindatabase/qintable.txt' fields terminated by ',' lines terminated by '\n'; #MySQL导出到TXT文件,MySQL用户要有写的权限
ll -Z /var/lib/mysql/
mkdir /backup
semanage fcontext -a -t mysql_db_t '/backup(.*)?'
restorecon -RFv /backup/ #如果导到别的别的地方,需要修改文件的上下文
实验--备份
mysqldump -u root -p scott > /scott.dump #备份sott到/sott.dump
mysqldump -u root -p scott emp >/scott.emp.dump #备份scott下emp表到/scott.emp.dump
mysqldump -u root -p scott dept salgrade > /scott.dept+salgrade.dump #备份两个表
实验--还原
create database qin;
mysql -u root -p qin </scott.dump #还原数据库
mysql -u root -p qin </scott.dept+salgrade.dump #还原表
use qin;
show tables;