
MySQL各种权限(共27个)
(以下 *** 作都是以root身份登陆进行grant授权,以p1@localhost身份登陆执行各种命令。)
1 usage
连接(登陆)权限,建立一个用户,就会自动授予其usage权限(默认授予)。
mysql> grant usage on to ‘p1′@’localhost’ identified by ‘123′;
该权限只能用于数据库登陆,不能执行任何 *** 作;且usage权限不能被回收,也即REVOKE用户并不能删除用户。
2 select
必须有select的权限,才可以使用select table
mysql> grant select on pyt to ‘p1′@’localhost’;
mysql> select from shop;
3 create
必须有create的权限,才可以使用create table
mysql> grant create on pyt to ‘p1′@’localhost’;
8的等级最高,相当于sqlserver的sa账户和oracle的sysadmin,可以做一切 *** 作,包括以下七种角色,事实上一般以下七种角色的权限都是他来指派的,企业中一般严禁这个账户登陆的,因为一旦误 *** 作将会造成灾难性损失。
1管理数据库大小,数据空间大小以及数据日志大小等
2拥有建立数据库的权限
3对已经分配磁盘空间进行分配
4可以管理进程,比如剔除一些非法进程
5可以管理连接权限,用户权限等。
6这个可以启动服务器,对服务器的属性进行分配(连接池、cpu、内存空间等),貌似是sqlserver特有
7这个角色很多数据库是没有的,oracle8以前好像也是没有的,可以安装数据库以及删除数据库(在非常安全控制地方这种账户是没有连接权限的,也就是说只能安装,但是不能读取里面的数据)
这些权限各不相同,所以很难说是对服务器的还是数据库的,比如7这种,根本说不上是不是服务器级别的,因为它只有安装权限,可以认为是系统级别的,事实上,只有sqlserver存在服务器和数据库的区别,一般的诸如db2和oracle中的所谓服务器指的是那台机器而不是一个sqlserver意义上的服务器,具体情况具体对待
其实主要角色不止这些,还有诸如备份管理员backupadmin,数据清理员英文忘记了等等。
固定服务器角色 服务器级权限 db_accessadmin 已授予:ALTER ANY USER、CREATE SCHEMAdb_accessadmin 已使用 GRANT 选项授予:CONNECTdb_backupoperator 已授予:BACKUP DATABASE、BACKUP LOG、CHECKPOINT已授予:VIEW ANY DATABASEdb_datareader 已授予:SELECT 已授予:VIEW ANY DATABASEdb_datawriter 已授予:DELETE、INSERT、UPDATE已授予:VIEW ANY DATABASEdb_ddladmin 已授予:ALTER ANY ASSEMBLY、ALTER ANY ASYMMETRIC KEY、ALTER ANY CERTIFICATE、ALTER ANY CONTRACT、ALTER ANY DATABASE DDL TRIGGER、ALTER ANY DATABASE EVENT、NOTIFICATION、ALTER ANY DATASPACE、ALTER ANY FULLTEXT CATALOG、ALTER ANY MESSAGE TYPE、ALTER ANY REMOTE SERVICE BINDING、ALTER ANY ROUTE、ALTER ANY SCHEMA、ALTER ANY SERVICE、ALTER ANY SYMMETRIC KEY、CHECKPOINT、CREATE AGGREGATE、CREATE DEFAULT、CREATE FUNCTION、CREATE PROCEDURE、CREATE QUEUE、CREATE RULE、CREATE SYNONYM、CREATE TABLE、CREATE TYPE、CREATE VIEW、CREATE XML SCHEMA COLLECTION、REFERENCES 已授予:VIEW ANY DATABASEdb_denydatareader 已拒绝:SELECT 已授予:VIEW ANY DATABASEdb_denydatawriter 已拒绝:DELETE、INSERT、UPDATEdb_owner 已使用 GRANT 选项授予:CONTROL 已授予:VIEW ANY DATABASEdb_securityadmin 已授予:ALTER ANY APPLICATION ROLE、ALTER ANY ROLE、CREATE SCHEMA、VIEW DEFINITION 已授予:VIEW ANY DATABASEdbm_monitor 已授予:VIEW 数据库镜像监视器中的最新状态固定服务器角色的权限bulkadmin 已授予:ADMINISTER BULK OPERATIONS dbcreator 已授予:CREATE DATABASE diskadmin 已授予:ALTER RESOURCES processadmin 已授予:ALTER ANY CONNECTION、ALTER SERVER STATE securityadmin 已授予:ALTER ANY LOGIN serveradmin 已授予:ALTER ANY ENDPOINT、ALTER RESOURCES、ALTER SERVER STATE、ALTER SETTINGS、SHUTDOWN、VIEW SERVER STATE setupadmin 已授予:ALTER ANY LINKED SERVER sysadmin 已使用 GRANT 选项授予:CONTROL SERVER 详情请参考: >
1、权限存储位置
权限存储在mysql库的user,db, tables_priv, columns_priv, andprocs_priv这几个系统表中,待MySQL实例启动后就加载到内存中
User表:存放用户账户信息以及全局级别(所有数据库)权限,决定了来自哪些主机的哪些用户可以访问数据库实例,如果有全局权限则意味着对所有数据库都有此权限
Db表:存放数据库级别的权限,决定了来自哪些主机的哪些用户可以访问此数据库
Tables_priv表:存放表级别的权限,决定了来自哪些主机的哪些用户可以访问数据库的这个表
Columns_priv表:存放列级别的权限,决定了来自哪些主机的哪些用户可以访问数据库表的这个字段
Procs_priv表:存放存储过程和函数级别的权限
以上就是关于MySQL的权限有哪些全部的内容,包括:MySQL的权限有哪些、数据库的固定服务器角色有8种,他们分别都有什么权限请行家指点、固定服务器角色、固定数据库角色各有哪几类有什么权限等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)