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数据库—— 用户管理和权限管理的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 数据库用户和权限管理

数据库 之 MySQL用户和权限管理

mysql用户和权限管理

MySQL之用户和权限管理

MySql学习19-----用户管理

mysql中怎样设置用户和管理员的权限?