MySQL用户管理
1.创建用户
create user '用户'@'主机' identified by '密码' ;
(1)说明:
①用户名:登录的用户名,此时的引号可以省略不写。
②@:@的前后不能含有空格
③登录主机:登录主机的引号可省略,使用通配符%的时候不可以省略。
◆仅本机:localhost
◆任意远程主机:%(不写则默认是%)
◆特定主机:特定主机的IP
④密码:登录密码,可以为空,表示不需要密码,此时的引号不能省略
(2)示例:
CREATE USER 'xyc'@'localhost' IDENTIFIED BY '1234567890'; CREATE USER 'gm'@'%' IDENTIFIED BY ''; /* 任意主机不需要密码 */ CREATE USER gm2; /* 简写 */ CREATE USER 'gm2'@'192.168.1.6';/* 仅192.168.1.6,不需要密码 */
2.为用户授权
grant 权限 on 数据库.表 to '用户'@'主机' ;
(1)说明:
①权限:用户的操作权限,多个权限可以用(,)分隔
- usage:默认权限,无权限;
- select:查询权限(只读权限);
- insert:插入权限;
- update:更新权限;
- all:所有权限。
②数据库:授权的数据名,所有数据库用*表示
③表:授权的数据表,所有表使用*表示,所有数据库下的所有数据表*.*
④此种授权的用户不具备给其他用户授权的能力
(2)具备授权的用户给其他用户的授权:
grant 权限 on 数据库.表 to '用户'@'主机' with grant option ;
移除用户的权限
revoke 权限 on 数据库.表 to '用户'@'主机' ;
注:多个权限可以用(,)分隔。
3.查看用户的权限
show grants for '用户'@'主机' ;
4.修改用户名
rename user '用户'@'主机' to '新用户'@'主机' ;
(1)说明:修改用户的时候建议不要修改主机,即两个主机名一致。
(2)不加主机,表示默认,主机是任意(%)。
5.设置与更改用户密码
set password for '用户名'@'主机' = password('新密码');
(1)在不指定用户名时,set password更新当前登录用户的口令。
(2)password('新密码')表示使用password()函数对密码进行加密处理。
SET PASSWORD FOR 'xyc'@'localhost' = PASSWORD('1234567890');
6.删除用户
(1)伪代码:
drop user '用户名'@'主机' ;
(2)示例:
DROP USER 'gm2'@'192.168.1.6';
7.查询用户
(1)伪代码:
select 字段 from mysql.user ;
(2)示例:
SELECT USER, HOST FROM mysql.user;
8.关于主机host的说明
- 仅本机:localhost
- 任意远程主机:%(不写则默认是%)
- 特定主机:特定主机的IP
当不写的时候,增删改查都在默认主机下进行。

浙公网安备 33010602011771号