MySQL·数据库安全

#准备实验数据
create database if not exists exp05;
create table exp05.goods(id int,name varchar(32));
insert into exp05.goods values(1,'book'),(2,'apple');

create database if not exists exp06;
create table exp06.goods(id int,name varchar(32));
insert into exp06.goods values(1,'pen'),(2,'banana');

create database if not exists exp07;
create table exp07.goods(id int,name varchar(32));
insert into exp07.goods values(1,'rule'),(2,'pach');

#正式实验
#备份数据库exp05;
打开mysql的位置
mysqldump -uroot -p exp05>c:exp05.sql


#备份数据库exp06及exp07;
mysqldump -uroot -p --databases exp06 exp07

#备份所有数据库
mysqldump -uroot -p --all-databases

#还原数据库exp06;
mysql -uroot -p exp06 <exp06.sql;

#登录mysql
MySQL -u root -p
#进入mysql数据库
use mysql;
#创建用户user1,赋予其对exp06数据库中的表的select功能。
create user user1;
grant select on exp06.goods to user1;

#使用insert语句创建用户user2,令用户user2更改自己的密码为987
INSERT INTO mysql.user (host, user, authentication_string,ssl_cipher, x509_issuer,
	x509_subject) VALUES ('localhost', 'user2',PASSWORD('987'),' ',' ',' ');

#应用msqladmin命令修改root用户密码。//在文件夹下操作
mysqladmin -uroot -p123456 password root

#应用update语句修改root用户密码。
update mysql.user set authentication_string=password('123') where user='root' and host='localhost';

#授权给user2用户查询及将自己权限赋予他人的权限。
grant all privileges on *.* to 'user2'@'localhost' with grant option;

#收回user1的权限。
revoke select on exp06.goods from 'user1'@'%';

#收回user2的所有权限。
revoke all privileges on *.* from 'user2'@'localhost';
revoke grant option on *.* from 'user2'@'localhost';
#删除用户user2。
drop user 'user2'@'localhost';

此次实验过程中容易出错的地方为就是命令是在文件夹下操作还是在mysql钟进行,一定要分清楚。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值