1.用户管理
 查看用户信息,如:select user, host from mysql.user;
1.1.创建用户
 可使用create user语句创建多个可使用客户端连接服务端的用户。
 创建用户时,一般需指定:
 (1).用户名
 (2).主机名
 指明客户端可在那些机器上启动,如省略则默认为’%',表示该用户可在任意主机上启动客户端。
 (3).密码
 如省略则表示此用户暂不需要密码。
示例:创建一个用户名xiao,指定主机为localhost,密码为1234的用户:create user 'xiao'@'localhost' identified by '1234';
1.2.修改密码
 如:alter user 'xiao'@'localhost' identified by '1111';
1.3.删除用户
 如:drop user 'xiao'@'localhost';
2.权限管理
 2.1.授予权限
 可用grant语句来为某个用户授予权限,一般格式如下:
grant 权限名称
on 应用级别
to '用户名'@'主机名'
[with grant option]
(1).权限名称
| 权限名称 | 描述 | 
|---|---|
| ALL [PRIVILEGES] | 代表除了GRANT OPTION,PROXY以外的其他所有权限 | 
| ALTER | 修改数据库,表结构的权限 | 
| ALTER ROUTINE | 修改或删除存储例程的权限 | 
| CREATE | 创建数据库和表的权限 | 
| CREATE ROLE | 创建角色的权限 | 
| CREATE ROUTINE | 创建存储例程的权限 | 
| CREATE TABLESPACE | 创建,删除和修改表空间及日志文件组的权限 | 
| CREATE TEMPORARY TABLES | 创建临时表的权限 | 
| CREATE USER | 创建,删除,重命名用户,及移除用户权限的权限 | 
| CREATE VIEW | 创建和修改视图的权限 | 
| DELETE | 删除记录的权限 | 
| DROP | 删除数据库,表和视图的权限 | 
| DROP ROLE | 删除角色的权限 | 
| EVENT | 使用事件的权限 | 
| EXECUTE | 执行存储例程的权限 | 
| FILE | 允许服务器读写文件的权限 | 
| GRANT OPTION | 给其他账户授予或移除权限的权限 | 
| INDEX | 创建或删除索引的权限 | 
| LOCK TABLES | 使用LOCK TABLES语句的权限 | 
| PROCESS | 使用SHOW PROCESSLIST语句看到所有线程的权限 | 
| PROXY | 使用用户代理的权限 | 
| REFERENCES | 创建外键的权限 | 
| RELOAD | 使用FLUSH语句的权限 | 
| REPLICATION CLIENT | 查看主,从服务器的权限 | 
| REPLICATION SLAVE | 从服务器可从主服务器读取二进制日志事件的权限 | 
| SELECT | 使用SELECT语句的权限 | 
| SHOW DATABASES | 使用SHOW DATABASES语句的权限 | 
| SHOW VIEW | 使用SHOW CREATE VIEW的权限 | 
| SHUTDOWN | 使用mysqladmin shutdown的权限 | 
| SUPER | 使用其他诸如CHANGE REPLICATION SOURCE TO,CHANGE MASTER TO,KILL,PURGE BINARY LOGS,SET GLOBAL和mysqladmin debug命令的管理员操作的权限 | 
| TRIGGER | 使用UPDATE语句的权限 | 
| USAGE | 无权限 | 
常用的主要是SELECT,INSERT,UPDATE,CREATE,DROP,ALTER等。
(2).应用级别
 常用的权限的应用级别有下面这些:
 a.*.*
 代表全局级别,全局级别的权限作用于任何数据库下的任何对象(诸如表,视图等)。
 b.数据库名.*
 代表数据库级别,数据库级别的权限作用于指定数据库下的任何对象。
 c.数据库名.表名
 代表表级别,表级别的权限作用于表中的任何列。
(3).WITH GRANT OPTION
 使用GRANT语句为某个用户授予权限时添加了WITH GRANT OPTION子句,则表示该用户可将自己拥有的权限授予其他人。
create user 'xiao'@'localhost' identified by '1234';
// 授予全局select权限
grant select on *.* to 'xiao'@'localhost' with grant option;
// 授予指定数据库下指定表的update权限
grant update on xiao.student_info to 'xiao'@'localhost' with grant option;
2.2.查看权限
 如:show grants for 'xiao'@'localhost';
2.3.移除权限
REVOKE 权限名称
ON 应用级别
FROM '用户名'@'主机名';
如,REVOKE UPDATE ON xiao.student_info FROM 'xiao'@'localhost';