管理用户
添加用户:
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
用户名:自定义
主机名:loacalhost本机 %远程
密码:自定义的
例:
CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
查看用户:
SELECT * FROM USER;
删除用户:
DROP USER '用户名'@'主机名';
例:
DROP USER 'pig'@'%';
修改用户密码:
use mysql;
mysql5.5版本和mysql5.7版本:
SET PASSWORD FOR 'root'@'localhost'=PASSWORD('123');
mysql8.0版本:
ALTER USER 'lisi'@'localhost' IDENTIFIED BY '123';
flush privileges;
授权
1.查询权限:
语法:SHOW GRANTS FOR '用户名'@'主机名';
例:SHOW GRANTS FOR 'dog'@'localhost';
该用户可以操作哪个数据库的哪些表。如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
2.授予权限:
语法:GRANT 权限 1, 权限 2... ON 数据库名.表名 TO '用户名'@'主机名';
GRANT…ON…TO 授权关键字,授予用户的权限,如 CREATE、ALTER、SELECT、INSERT、UPDATE 等。如果要授予所有的权限则使用 ALL
数据库名.表名 该用户可以操作哪个数据库的哪些表。如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
'用户名'@'主机名' 给哪个用户授权,注:有 2 对单引号
例:
GRANT CREATE,SELECT,UPDATE,DROP,INSERT ON pn.`account` TO 'dog'@'localhost';
GRANT ALL ON pn.`account` TO 'dog'@'localhost';
3.撤销权限
语法:revoke 权限 1, 权限 2... on 数据库名.表名 from '用户名'@'主机名';
例: REVOKE ALL ON pn.`account` FROM 'dog'@'localhost';