mysql实验7

实验7   数据库安全

一)实验目的

1、掌握数据的备份及还原

2、掌握用户管理方法

3、掌握权限管理方法

4、熟悉Navicat 软件

(二)实验要求

    请大家将执行结果以图片形式完成实验报告,并在最后给出自己经过实验得到的总结。

(三)实验学时

2学时

)实验内容 

1、备份数据库exp05;

mysqldump -h127.0.0.1 -uroot -proot exp05 > F:\学习\大二下\数据库mysql\实验\实验7\exp05.sql

2、备份数据库exp06及exp07;

mysqldump -h127.0.0.1 -uroot -proot --databases exp06 exp07 > F:\学习\大二下\数据库mysql\实验\实验7\exp06exp07.sql

3、备份所有数据库

mysqldump --all-databases -h127.0.0.1 -uroot -proot >F:\学习\大二下\数据库mysql\实验\实验7\allmysql.sql

4、还原数据库exp06;

mysql -h127.0.0.1 -uroot -proot exp06 < F:\学习\大二下\数据库mysql\实验\实验7\exp06exp07.sql

5、创建用户user1,赋予其对exp07数据库中的表的select功能。

create user 'user1'@'localhost' identified by '123456'
grant select on exp07.* to 'user1'@'localhost'

6、使用insert语句创建用户user2,令用户user2更改自己的密码为987。

insert into mysql.user (User, Host, Password) VALUES ('user2', 'localhost', PASSWORD('12'))
flush privileges
SET PASSWORD FOR 'user2'@'localhost' = PASSWORD('987')

7、应用msqladmin命令修改root用户密码。

mysqladmin -u root -p password root

8、应用update语句修改root用户密码。

update user set password=PASSWORD('root') where user='root'

9、授权给user2用户查询及将自己权限赋予他人的权限。

grant select,grant option on *.* to 'user2'@'localhost'

10、收回user1的权限。

revoke select on exp07.* from 'user1'@'localhost'

11、收回user2的所有权限。

revoke all,grant option from 'user2'@'localhost'

12、删除用户user2

drop user if exists 'user2'@'localhost'

如何下载Navigat软件,请参考此链接文章

13、熟悉Navicat 软件,使用其与mysql进行连接。

14、在Navicat中建立数据库exp11,在其中建立数据表student,添加具体数据。

15、在Navicat中建立用户user3,给其在exp11.student赋予select,insert权限。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MySQL 是一种关系型数据库管理系统,支持事务处理。在 MySQL 中,事务是指一组数据库操作,这些操作被视为一个单独的工作单元,并且要么全部完成,要么全部回滚(撤销)。 以下是一个简单的 MySQL 实验,演示如何使用事务进行数据库操作: 1. 创建一个名为 `test_db` 的数据库,并在其中创建一个名为 `test_table` 的表: ```sql CREATE DATABASE test_db; USE test_db; CREATE TABLE test_table ( id INT PRIMARY KEY, name VARCHAR(255) ); ``` 2. 向 `test_table` 表中插入一些数据: ```sql INSERT INTO test_table (id, name) VALUES (1, 'Alice'); INSERT INTO test_table (id, name) VALUES (2, 'Bob'); INSERT INTO test_table (id, name) VALUES (3, 'Charlie'); ``` 3. 开始一个事务,并向 `test_table` 表中插入一条数据: ```sql START TRANSACTION; INSERT INTO test_table (id, name) VALUES (4, 'David'); ``` 4. 检查 `test_table` 表中的数据。你会发现,此时表中仅有四条数据: ```sql SELECT * FROM test_table; ``` 输出: ``` +----+---------+ | id | name | +----+---------+ | 1 | Alice | | 2 | Bob | | 3 | Charlie | | 4 | David | +----+---------+ ``` 5. 回滚事务: ```sql ROLLBACK; ``` 6. 再次检查 `test_table` 表中的数据。你会发现,此时表中仍然只有三条数据: ```sql SELECT * FROM test_table; ``` 输出: ``` +----+---------+ | id | name | +----+---------+ | 1 | Alice | | 2 | Bob | | 3 | Charlie | +----+---------+ ``` 在这个实验中,我们演示了如何使用 MySQL 中的事务进行数据库操作。如果在事务中执行的任何操作失败,整个事务都将被回滚,以确保数据的一致性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值