MySQL数据库—— 用户管理和权限管理
Posted 海边拾贝seebit
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数据库—— 用户管理和权限管理相关的知识,希望对你有一定的参考价值。
一、管理用户
1.查询用户
第一步:切换到mysql数据库
use mysql;
第二步:查询user表
select * from user;
两条记录都是root用户 ,其中第一条记录表示本机访问,第二条记录是远程访问。
注意:通配符%表示可以在任意主机登录查询数据库
2.新增用户
语法:create user \'用户名\'@\'主机名\' identified by \'密码\';
3.删除用户
语法:drop user \'用户名\'@\'主机名\'
4.修改用户密码
语法:update user set password = password(\'新密码\') where user = \'用户名\'
语法:set password for \'用户名\'@\'主机名\' = password(\'主机名\')
MySQL中忘记root用户密码
(1) cmd 右键以管理员身份运行
(2) net stop mysql -- 停止MySQL服务
(3) 使用无验证方式启动MySQL服务:mysqld --skip-grant-tables
(4) 再打开一个新的窗口,输入MySQL即可进入
(5) 修改密码的SQL语句
use mysql;
update user set password = password(\'新密码\') where user = \'root\';
(6) 关掉所有cmd窗口,在窗口下面,打开任务管理器。
(7) 在进程栏,手动结束mysqld.exe进程
(8)启动MySQL服务
cmd右键以管理员身份运行
net start mysql
(9)使用MySQL用户名和密码登录 mysql -uroot -proot登录
二、权限管理
1. 查询权限
语法:show grants for \'用户名\'@\'主机名\';
usage 表示只有登录权限。
root用户有所有权限。
2. 授予权限
语法:grant 权限列表 on 数据库名.表名 to \'用户名\'@\'主机名\';
以上赋予权限是细粒度的。
如果给所有用户赋予权限,在所有数据库所有表上,使用通配符:grant all on *.* to \'用户名\'@\'主机名\';
3. 撤销权限
语法::grant 权限列表 on 数据库名.表名 from \'用户名\'@\'主机名\';
以上是关于MySQL数据库—— 用户管理和权限管理的主要内容,如果未能解决你的问题,请参考以下文章