1. 常用操作
1 # 进入mysql数据库2 usemysql;3
4 # 创建用户,ip填‘%‘表示允许所有ip5 create user ‘username‘@‘ip‘ IDENTIFIED by ‘password‘;6
7 # 允许远程客户端通过密码访问8 alter user ‘username‘@‘ip‘ IDENTIFIED WITH mysql_native_password by ‘password‘;9
10 # 直接创建能够通过远程客户端访问的账户11 create user ‘username‘@‘ip‘ IDENTIFIED WITH mysql_native_password by ‘password‘;12
13 # 删除用户14 drop user ‘username‘@‘ip‘;15 # 删除以后要刷新权限16 FLUSH PRIVILEGES;17
18 # 修改用户19 rename user ‘username‘@‘ip‘ to ‘new_username‘@‘new_ip‘;20
21 # 修改密码22 set password for ‘username‘@‘ip‘=‘new_password‘;23
24 # 授予部分权限,db和table填*表示所有25 grant SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, INDEX, CREATE VIEW, SHOW VIEW, SHOW DATABASES, CREATE TEMPORARY TABLES on dbname.tablename to ‘username‘@‘ip‘;26
27 # 授予所有权限,28 grant ALL PRIVILEGES on dbname.tablename to ‘username‘@‘ip‘;29
30 # 撤销授权31 revoke all on *.* from ‘username‘@‘ip‘;
2. 常见问题
a. 创建用户时报错 [Err] 1396 - Operation CREATE USER failed for ‘username‘@‘ip‘ 解决方法
可能原因:
1. 用户已存在;
2. 使用delete语句删除用户后没有刷新权限;
3. 用户不存在,但是存在该用户的权限信息。
解决步骤:
1. 创建过用户,查询后发现无此用户:
执行 FLUSH PRIVILEGES; 语句后,重新执行创建语句
2. 如果还是报错:
执行 drop user ‘username‘@‘ip‘;
然后执行 FLUSH PRIVILEGES;
然后再执行创建语句
参考文章:
-- 创建&授权
-- 撤销权限
-- 删除用户
https://blog.csdn.net/asty9000/article/details/80945631 mysql创建用户报错[Err] 1396 - Operation CREATE USER failed for ‘test‘@‘%‘的解决方法
-- 权限说明
原文:https://www.cnblogs.com/tarencez/p/12390499.html