除非练习或特殊场景,否则勿使用root账户进行数据库操作
用户
MySQL用户账号和信息存储在名为mysql的数据库中,一般不直接访问进行修改
查看用户列表
创建用户账号
可以通过在mysql库中的user表直接插入行来创建用户,但一般应使用语句创建
重命名用户账号
更改口令
删除用户账号
查看用户权限
用户定义为user@host,即用户名和主机名的组合,如果不指定主机名,则使用默认主机名%,不指定主机
新创建好的用户默认没有被赋予任何权限,进行权限查询时显示为GRANT USAGE ON *.* TO `用户名`@`%`
赋予权限
GRANT语句要求给出以下信息
要授予的权限
被授予访问权限的数据库或表
用户名
例:
撤销权限
GRANT和REVOKE可在以下几个层次上进行权限控制操作
整个服务器:使用GRANT ALL(REVOKE ALL)
整个数据库:ON database.*
特定表:ON database.Table
特定列
特定存储过程
ALL:除GRANT OPTION外的所有权限
INSERT:使用INSERT插入数据
UPDATE:使用UPDATE更新数据
SELECT:使用SELECT查询
DELETE:使用DELETE删除记录
CREATE:使用CREATE TABLE创建表操作
ALTER:使用ALTER TABLE更新表操作
DROP:使用DROP TABLE删除表
LOCK TABLES:使用LOCK TABLES锁定表
INDEX:使用CREATE INDEX和DROP INDEX创建或删除索引
CREATE VIEW:使用CREATE VIEW创建视图
CREATE USER:使用CREATE USER、DROP USER、RENAME USER和REVOKE ALL PROVILEGES创建、删除、重命名用户及收回权限
CREATE TEMPORARY:使用CREATE TEMPORARY TABLE
ALTER ROUTINE:使用ALTER PROCEDURE和DROP PROCEDURE修改或删除存储过程
CREATE ROUTINE:使用CREATE PROCEDURE创建存储过程
EXECUTE:使用CALL和存储过程
FILE:使用SELECT INTO OUTFILE和LOAD DATA INFILE导出文本文件和导入数据权限
GRANT OPTION:使用GRANT和REVOKE设置或撤销权限
PROCESS:使用SHOW FULL PROCESSLIST显示所有进程(SHOW PROCESSLIST显示前100条)
RELOAD:使用FLUSH清除或重新加载内部缓存
REPLICATION CLIENT:服务器位置的访问
REPLICATION SLAVE:由复制从属使用
SHOW DATABASES:使用SHOW DATABASES显示所有数据库
SHOW VIEW:使用SHOW CREATE VIEW查看创建视图的语句
SHUTDOWN:使用mysqladmin shutdown关闭mysql
SUPER:使用CHANGE MASTER、KILL、LOGS、PURGE、MASTER和SET GLOBAL、还允许mysqladmin调试登陆
USAGE:无访问权限
联系客服