1.命令行使用mysqladmin修改密码
[root@db01 ~]# mysqladmin -uroot -p123 password '123456'
Warning: Using a password on the command line interface can be insecure.
#警告:在命令行写出密码不安全[root@db03 ~]# mysqladmin -uroot -p password
Enter password: #旧密码
New password: #新密码
Confirm new password: #重复新密码2.授权的方式修改密码
mysql> grant all on *.* to root@'localhost' identified by '123';3.更新数据修改密码
mysql> update mysql.user setpassword=password('123456') where user='root' and host='localhost';
mysql> flush privileges;4.set不加条件修改密码
mysql>setpassword=password('123');
修改当前登录数据库用户的密码
#授权的命令
grant all privileges on *.* to root@'localhost' identified by '123';
grant all privileges on *.* to root@'10.0.0.1' identified by '123456';
grant all on *.* to root@'localhost' identified by '123';#查看用户的授权有哪些
show grants for root@'localhost';#授权语句select * from mysql.user where user='cactiuser'\G #查看授权权限有哪些
grant #授权命令
all #所有权限
on #在......上
*.* #所有库.所有表
to #给
root@'localhost'#'用户名'@'主机域'
identified #密码
by #是'123'#密码本身
grant all on *.* to root@'localhost' identified by '123'; 所有库所有表
grant all on mysql.* to gcc@'localhost' identified by '123'; 单库授权
grant all on mysql.user to zy@'localhost' identified by '123'; 单表授权
#企业里面称单列授权为 脱敏:脱离敏感信息
grant select(user,host) on mysql.user to zzy@'localhost' identified by '123';#举例:1.普通用户只能看到user列
grant select(user) on mysql.user to diaosi@'localhost' identified by '123';2.VIP用户能看到所有
grant all on mysql.user to vip@'localhost' identified by '123';
4)在企业里权限的设定
#开发要开一个用户连接数据库1.进行沟通:
1.1 你要操作哪些库哪些表?
1.2 你从哪个ip连接过来?
1.3 用户名你想用什么?
1.4 密码想设置什么?
1.5 这个用户你要用多久?
1.6 发邮件
2.一般给开发什么权限
grant select,update,insert on test.* to dev@'10.0.0.101' identified by 'Lhd@123.com';3.千万千万不能随便把root权限交出去
6、权限实践
1)准备数据库
#创建wordpress数据库
create database wordpress;#使用wordpress库
use wordpress;#创建t1、t2表
create table t1 (id int);
create table t2 (id int);#创建blog库
create database blog;#使用blog库
use blog;#创建tb1表
create table tb1 (id int);
2)授权
#给wordpress@'10.0.0.5%'用户查询所有库下所有表的权限,密码是1231、grant select on *.* to wordpress@'10.0.0.5%' identified by '123';#给wordpress@'10.0.0.5%'用户增加,删除,修改wordpress库下所有表的权限,密码是1232、grant insert,delete,update on wordpress.* to wordpress@'10.0.0.5%' identified by '123';#给wordpress@'10.0.0.5%'所有权限操作wordpress库下面的t1表,密码是1233、grant all on wordpress.t1 to wordpress@'10.0.0.5%' identified by '123';
1.如果在不同级别授权,权限是相加关系
2.我们不推荐在多级别定义重复的权限
3.最常见的授权方式就是单库授权
grant select,insert,delete,update on wordpress.* to wordpress@'10.0.0.5%' identified by '123';4.如果涉及到用户的敏感信息,我们可以选择使用脱敏授权,即单列授权
grant select(user,host) on mysql.user to zzy@'localhost' identified by '123';5.查看已授权的用户权限
mysql> show grants for root@'localhost';6.用create新建的用户只有登录权限。