添加用户
%为开放外网访问,如果限制本机访问,为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');