序言
我们现在默认使用的都是 root 用户,超级管理员,拥有全部的权限。但是,一个公司里面的数据库服务器上面 可能同时运行着很多个项目的数据库。所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限来管 理和维护数据库
管理用户
添加用户
语法:
1 | CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码'; |
演示
1 | -- 创建帐号hyl,密码123456的用户,该用户只能在当前电脑登陆数据库 |
删除用户
1 | DROP USER '用户名'@'主机名'; |
修改用户密码
1 | UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名'; |
mysql中忘记了root用户的密码
cmd – > net stop mysql 停止mysql服务[需要管理员运行该cmd]
使用无验证方式启动mysql服务: mysqld –skip-grant-tables
打开新的cmd窗口,直接输入mysql命令,敲回车。就可以登录成功
use mysql;
update user set password = password(‘你的新密码’) where user = ‘root’;
关闭两个窗口
打开任务管理器,手动结束mysqld.exe 的进程
启动mysql服务
使用新密码登录。
查询用户:
– 1. 切换到mysql数据库
USE myql;
– 2. 查询user表
SELECT * FROM USER;- 通配符: % 表示可以在任意主机使用用户登录数据库
权限管理
查询权限:
1 | SHOW GRANTS FOR '用户名'@'主机名'; |
授予权限:
1 | grant 权限列表 on 数据库名.表名 to '用户名'@'主机名'; |
撤销权限:
1 | revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名'; |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 郝永亮的主页!
评论