1. 管理员密码管理
恢复数据库管理员本机登录密码
]#systemctl stop mysqld
]# vim /etc/my.cnf
[mysqld]
skip-grant-tables
#validate_password_policy=0
#validate_password_length=6
:wq
]# systemctl start mysqld
]#mysql
mysql> select host,user,authentication_string from mysql.user;
mysql>
update mysql.user
set authentication_string=password("abc123")
where
host="localhost" and user="root";
mysql> flush privileges;
mysql>quit
]# vim /etc/my.cnf
[mysqld]
#skip-grant-tables
validate_password_policy=0
validate_password_length=6
:wq
]# systemctl restart mysqld
]# mysql -uroot -pabc123
mysql>
2.1操作系统管理员 修改数据库管理员root本机登录的密码
[root@mysql51 ~]# mysqladmin -hlocalhost -uroot -p password "654321"
Enter password: 当前登录密码
2.2 什么是用户授权: 在数据库服务器上添加连接用户,添加时可以设置用户的访问权限和连接的密
码。默认只允许数据库管理员root用户在本机登录。默认只有数据库管理员root用户在本机登录才有
授权权限。
2.3 用户授权命令的语法格式
mysql> grant 权限列表 on 数库名 to 用户名@"客户端地址"
identified by "密码" [with grant option];
例子1: 允许客户端254主机可以使用root连接,连接密码是123456,连接后的访问权限是多所有库
所有表有完全访问权限 ,且有授权权限。
192.168.4.51mysql>
db3.*
grant all on *.* to root@"192.168.4.254"
-> identified by "123456"
-> with grant option;
2.4 在客户端使用授权用户连接数据库服务器
]# ping -c 2 192.168.4.51
]# which mysql
]# yum -y install mariadb
]# mysql -h数据库服务器ip地址 -u用户名 -p密码
192.168.4.254]# mysql -h192.168.4.51 -uroot -p123456
mysql>
grant select,update(name) on studb.t8 to yaya3@"%" identified by "123456";
grant select,insert,update on studb.dogperson to yaya@"localhost" identified by
"123456";
grant all on studb.* to admin@"%" identified by "123456";
2.5 数据库服务器使用授权库存储授权信息
mysql库
user desc mysql.user; select * from mysql.user
db
tables_priv
clomoun_priv
2.6 撤销用户权限命令的语法格式
mysql> revoke 权限列表 on 数库名 from 用户名@"客户端地址" ;
例子1 : 撤销254主机 使用root用户连接时,授权权限。
mysql> revoke grant option on *.* from ‘root‘@‘192.168.4.254‘;
例子2 : 通过修改表记录的方式撤销用户的访问权限
mysql> update mysql.user
set Select_priv="N"
where user= ‘root‘ and host=‘192.168.4.254‘;
mysql> flush privileges;
例子3: 撤销254主机 使用root用户连接时 所有权限
mysql> revoke all on *.* from ‘root‘@‘192.168.4.254‘;
例子4 删除授权用户 ‘root‘@‘192.168.4.254‘;
drop user ‘root‘@‘192.168.4.254‘;
3.5 工作中如何授权
管理者 给完全权限且有授权权限
使用者 只给对存储数据的库有select和insert的权限