mysql用户操作

Scroll Down

添加用户

%为开放外网访问,如果限制本机访问,为localhost,也可以限制ip

create user 'dd'@'%' identified by 'dd123456';

删除用户

drop user 'dd'@'%';

查询用户及权限

mysql库下
查看整个user表

select * from user;

查看用户的host访问权限,%代表所有ip都可以访问。

select Host,User from user;

授权

#将所有库的所有表授权给dd
grant all privileges on *.* to 'dd'@'%' with grant option;
  • *.*是库名.表名。
  • with grant option为赋予grant权限。

注:mysql 8.0不支持在grant时设置密码,会报错。

权限:
all privileges:所有权限
select:查询数据
insert:插入数据
update:修改数据
delete:删除数据
create:创建表
alter:修改表结构
drop:删除表
references:操作外键
create temporary:操作临时表
index:操作索引
create view:创建视图
show view:查看视图

取消授权

revoke select on *.* from 'dd'@'%';

刷新权限后才会生效

flush privileges;

查看自己的权限

show grants;

查看别人的权限

show grants for dd@%;

修改用户密码

方法一:连接数据库后修改user表

update user set password=password('123456') where user='root' and host='localhost'; #改密码
flush privileges;  #刷新权限

方法二:使用mysqladmin工具
不要连接到数据库,直接执行命令。

mysqladmin -uroot -p原密码 password 新密码

方法三:连接数据库后使用set password修改

set password for root@localhost = password('123456');