《Mysql数据库应用》 第2版 郭文明 实验6 数据库系统维护核心操作与思路解析

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`

本文为个人学习笔记与经验总结,仅供学习交流参考

相关推荐
炘爚17 小时前
Phase 5:MySQL 连接池
数据库·mysql
潮起鲸落入海17 小时前
mysql主从复制读写分离
mysql
宁小法17 小时前
mysql - SQLSTATE[23000]报错类型
mysql·23000·报错类型
j_xxx404_18 小时前
MySQL库操作硬核解析:字符集、校验规则、大小写比较、备份恢复与连接排查
运维·服务器·数据库·人工智能·mysql·ai·oracle
minji...18 小时前
MySQL数据库 (五) MySQL表的约束(上),非空约束,默认值约束,零填充约束,主键约束,符合主键
数据库·mysql·表的约束·主键约束·非空约束·复合主键·零填充约束
拾贰_C18 小时前
【python | installation 】python 安装 | Windows | 命令使用
linux·数据库·ubuntu
贺今宵19 小时前
Vue 3 + Capacitor 使用jeep-sqlite,web端使用本地sqlite数据库
前端·数据库·vue.js·sqlite·web
列星随旋19 小时前
MySQL面经整理
数据库·mysql
AllData公司负责人19 小时前
大模型赋能AllData数据中台,系列升级|通过联合智谱大模型与Chat2DB开源项目,建设Text2SQL生产场景全新体验的数据源平台!
数据库·人工智能·text2sql·数据中台·数据源·chat2db·智谱大模型
是一个Bug19 小时前
MySQL 核心知识梳理:从底层原理到实战优化
mysql