1.数据库安全性
【实验6-1】创建用户
创建一个用户名为'Teacher'密码为'T99999'的用户;创建一个用户名为'Student'密码为'S11111'的用户。



【实验6-2】用户授权
将Shopping数据库上SELECT、INSERT、DELETE、UPDATE的权限授予'Teacher'用户;将Shopping数据库上SELECT的权限授予'Student'用户。


【实验6-3】以'Teacher'用户身份连接Shopping数据库,分别执行SELECT、INSERT、DELETE、UPDATE、CREATE操作,查看执行结果;以'Student'用户身份连接Shopping数据库,执行SELECT、INSERT、DELETE、UPDATE操作,查看执行结果。
1.以'Teacher'用户身份操作Shopping数据库:
SELECT操作:

INSERT操作:

DELETE操作:

UPDATE操作:

CREATE操作:

2.以'Student'用户身份操作Shopping数据库:
SELECT操作:

INSERT操作:

DELETE操作:

UPDATE操作:

2.数据库备份与恢复
【实验6-4】使用mysqldump工具对Shopping数据库进行备份,查看备份文件。



【实验6-5】对Shopping数据库启用二进制日志,并且查看日志。
1.启用二进制日志:
在my.ini文件的[mysqld]所在行加上以下一行:
log-bin
如下图所示:

注:由于log-bin未指定目录,因此会在MySQL的data目录下自动创建二进制日志文件
保存my.ini文件后,重启服务器。
2.查看二进制日志:



注:如果使用mysqlbinlog时,提示"unknown variable 'default-character-set=utf8'.",如下:

这时要把my.ini文件中[client]下的default-character-set=utf8注释掉,不再使用mysqlbinlog工具时,再把#default-character-set=utf8恢复为default-character-set=utf8,如下所示:

【实验6-6】使用mysqldump工具对Shopping数据库进行恢复,查看恢复前后Shopping数据库的数据状态。
恢复前Shopping数据库的数据状态:

Shopping数据库恢复中:


恢复后Shopping数据库的数据状态:

3.数据导入导出
【实验6-7】分别使用SELECT ...INTO、MySQL命令、MySQL Workbench完成Shopping数据库中会员表和汽车配件表的导出,查看导出结果。
说明:
由于在使用SELECT ...INTO和MySQL命令执行导出操作时,会出现如下错误:
Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
所以要在my.ini配置文件的[mysqld]下加入如下设置并保存和重启mysql服务器:
secure-file-priv=""
导出操作完成后,再把secure-file-priv=""删除并保存。
1.使用SELECT ...INTO导出会员表和汽车配件表:
注意:这里使用正斜杠(/)指定Windows路径名称,而不是使用反斜杠(\)





2.使用MySQL命令导出会员表和汽车配件表:





3.使用MySQL Workbench导出会员表和汽车配件表:










【实验6-8】分别使用LOAD DATA、MySQLIMPORT、MySQL Workbench完成Shopping数据库中会员表和汽车配件表的导入,查看导入结果。
1.使用LOAD DATA导入会员表和汽车配件表:




2.使用MySQLIMPORT导入会员表和汽车配件表:




说明:如果在执行语句时出现如下错误提示(用户名、密码没录错的情况下):
"mysqlimport:Error:1045 Access denied for use 'ODBC'@'localhost'(using password:YES)",则下面语句中的"mysqlimport --u root -p"需要在命令行中手工输入,不可以用粘贴的方式:
mysqlimport --u root -p --low-priority --replace shopping d:\backup\autoparts.txt
mysqlimport --u root -p --low-priority --replace shopping d:\backup\client.txt
3.MySQL Workbench导入会员表和汽车配件表:












以下是相关代码:
sql
【实验6-3】以'Teacher'用户身份连接Shopping数据库,分别执行SELECT、INSERT、DELETE、UPDATE、CREATE操作,查看执行结果;以'Student'用户身份连接Shopping数据库,执行SELECT、INSERT、DELETE、UPDATE操作,查看执行结果。
1.以'Teacher'用户身份操作Shopping数据库:
SELECT操作:
select * from shopping.autoparts;
INSERT操作:
insert into shopping.comment(comments,autoparts_apid,client_cid) values("很好",3,10);
DELETE操作:
delete from shopping.comment where client_cid=10;
UPDATE操作:
update shopping.comment set comments="非常满意" where comment_id=1;
CREATE操作:
use shopping;
create table test(tname char(10),age int);
2.以'Student'用户身份操作Shopping数据库:
SELECT操作:
select * from shopping.autoparts;
INSERT操作:
insert into shopping.comment(comments,autoparts_apid,client_cid) values("很好",3,10);
DELETE操作:
delete from shopping.comment where comment_id=1;
UPDATE操作:
update shopping.comment set comments="很好" where comment_id=1;
【实验6-7】分别使用SELECT ...INTO、MySQL命令、MySQL Workbench完成Shopping数据库中会员表和汽车配件表的导出,查看导出结果。
1.使用SELECT ...INTO导出会员表和汽车配件表:
use shopping;
select * from autoparts into outfile "d:/backup/autoparts.txt"
select * from `client` into outfile "d:/backup/client.txt"
【实验6-8】分别使用LOAD DATA、MySQLIMPORT、MySQL Workbench完成Shopping数据库中会员表和汽车配件表的导入,查看导入结果。
1.使用LOAD DATA导入会员表和汽车配件表:
load data infile "d:/backup/autoparts.txt" replace into table shopping.autoparts;
load data infile "d:/backup/client.txt" replace into table shopping.`client`
本文为个人学习笔记与经验总结,仅供学习交流参考