本文介绍 MySQL 实例的账号类型和账号权限说明。
MySQL 实例支持两种数据库账号:高权限账号和普通账号,账号创建后,账号类型无法切换。
账号类型 | 说明 |
---|---|
高权限账号 |
|
普通账号 |
|
说明
在控制台中,仅支持创建一个高权限账号。通过 create user
语句,可创建和高权限账号权限一致的普通账号,从而管理其他普通账号。
账号类型 | 授权类型 | 权限 |
---|---|---|
高权限账号 | 所有权限 | ALTER 、ALTER ROUTINE 、CREATE 、CREATE ROUTINE 、CREATE TEMPORARY TABLES 、CREATE USER 、CREATE VIEW 、DELETE 、DROP 、EVENT 、EXECUTE 、GRANT 、INDEX 、INSERT 、LOCK TABLES 、PROCESS 、REFERENCES 、RELOAD 、REPLICATION CLIENT 、REPLICATION SLAVE 、SELECT 、SHOW DATABASES 、SHOW VIEW 、TRIGGER 、UPDATE |
普通账号 | 读写 | ALTER 、ALTER ROUTINE 、CREATE 、CREATE ROUTINE 、CREATE TEMPORARY TABLES 、CREATE VIEW 、DELETE 、DROP 、EVENT 、EXECUTE 、INDEX 、INSERT 、LOCK TABLES 、REFERENCES 、SELECT 、SHOW VIEW 、TRIGGER 、UPDATE |
只读 | LOCK TABLES 、SELECT 、SHOW VIEW | |
仅 DDL | ALTER 、ALTER ROUTINE 、CREATE 、CREATE ROUTINE 、CREATE TEMPORARY TABLES 、CREATE VIEW 、DROP 、INDEX 、LOCK TABLES 、SHOW VIEW | |
仅 DML | CREATE TEMPORARY TABLES 、DELETE 、EVENT 、EXECUTE 、INSERT 、LOCK TABLES 、SELECT 、SHOW VIEW 、TRIGGER 、UPDATE |
说明
在部分老版本的实例中,账号权限和上表所述会有不一致。如遇此种情况,请提交工单联系技术支持升级实例。
权限 | 说明 |
---|---|
ALTER | 允许修改数据库中表的结构,包括更改字段、添加或删除字段,以及增删索引等操作。 |
ALTER ROUTINE | 允许更改存储过程和函数等例程的定义。 |
CREATE | 允许创建新的数据库、表、视图、存储过程、函数等对象。 |
CREATE ROUTINE | 允许创建存储过程和函数等例程对象。 |
CREATE TEMPORARY TABLES | 允许创建临时表。 |
CREATE USER | 允许创建新用户并为其分配权限。 |
CREATE VIEW | 允许创建视图对象。 |
DELETE | 允许从指定表中删除数据。 |
DROP | 允许删除数据库、表、视图、存储过程、函数等对象。 |
EVENT | 允许创建、修改和删除事件。 |
EXECUTE | 允许执行已存在的存储过程和函数等对象。 |
GRANT | 允许用户将访问权限分配给其他用户。 |
INDEX | 允许创建和删除索引。 |
INSERT | 允许向表中插入新数据。 |
LOCK TABLES | 允许锁定指定数据表以进行读写操作。 |
PROCESS | 允许查看当前所有正在执行的线程和进程的信息。 |
REFERENCES | 允许在当前数据库中创建或删除外键约束。 |
RELOAD | 允许重新加载系统配置文件,重启或关闭数据库等操作。 |
REPLICATION CLIENT | 允许查看和管理复制进程的状态和参数。 |
REPLICATION SLAVE | 允许从主服务器复制数据。 |
SELECT | 允许从指定表中查询数据。 |
SHOW DATABASES | 允许显示当前数据库服务器中的所有数据库。 |
SHOW VIEW | 允许显示视图的定义。 |
TRIGGER | 允许创建和管理触发器。 |
UPDATE | 允许更新指定表中的数据。 |