db2与oracle的全面对比8

LOAD TABLE YES NO NO NO YES YES
READ DATABASE TABLE DATA YES NO NO NO YES NO

5.2    授予/撤消实例级权限

建立实例级权限的办法是,将在外部安全设施中定义的用户组赋给相关的实例级权限参数(SYSADM_GROUPSYSCTRL_GROUPSYSMAINT_GROUPSYSMON_GROUP)。例如,如果希望用户帐号
KATE
具有 SYSMAINT 权限,那么可以将
KATE
放进
MAINT
组,然后将实例参数 SYSMAINT_GROUP 更新为
MAINT
。这样,MAINT
组中的任何用户都将具有 SYSMAINT 权限。要从
KATE
那里撤消 SYSMAINT 特权,只需从
MAINT
组中删除她,或者将 SYSMAINT_GROUP 参数的值改为另一个不包含她的组。在后一种情况下,如果
MAINT
组的其他成员不是新组的成员,那么他们的 SYSMAINT 权限也会被撤消。

清单 1
中给出了前面的命令及其结果。还可以以相似的方式更新任何其他实例级权限参数。


清单 1. 使用命令行更新实例级权限参数

            
db2 => update dbm cfg using sysmaint_group maint
DB20000I  The UPDATE DATABASE MANAGER CONFIGURATION command completed
successfully.
db2 => db2stop
11/19/2005 21:19:03     0   0   SQL1064N  DB2STOP processing was successful.
SQL1064N  DB2STOP processing was successful.
db2 => db2start
11/19/2005 21:19:09     0   0   SQL1063N  DB2START processing was successful.
SQL1063N  DB2START processing was successful.
db2 => get dbm cfg
Database Manager Configuration
Node type = Enterprise Server Edition with local and remote clients
.....
 SYSADM group name                        (SYSADM_GROUP)      =
 SYSCTRL group name                       (SYSCTRL_GROUP)     =
 SYSMAINT group name                      (SYSMAINT_GROUP)    = MAINT
 SYSMON group name                        (SYSMON_GROUP)      = 
.....

5.3    权限与特权的层次架构

5. DB2 UDB 权限和特权的层次结构

5
显示 DB2 UDB 中不同的权限和特权级别。范围从表上的特权到模式和存储过程上的特权。图 5 的上部显示前一节描述的实例权限级别。注意 SYSADM DBADM 权限自动获得虚线下面对于某个数据库的所有权限和特权。

5.4    各类权限说明

3
总结了对于用户或用户组可以授予和撤消的数据库权限类型。只有具有 SYSADM DBADM 权限的用户可以授予和撤消这些权限。


3. 数据库级权限的总结

数据库权限
CONNECT 允许用户连接数据库
BINDADD 允许用户在数据库中创建新的包
CREATETAB 允许用户在数据库中创建新的表
CREATE_NOT_FENCED 允许用户注册定义为 NOT FENCED 的用户定义函数(UDF)或存储过程
IMPLICIT SCHEMA 允许用户在尚不存在的模式中创建对象(它自动地创建模式)*
QUIESCE_CONNECT 允许用户连接处于 quiesced 状态的数据库
CREATE_EXTERNAL_ROUTINE 允许用户注册外部例程(用 C Java 等外部语言编写的例程)

*SYSIBM 成为隐式创建的模式的所有者,PUBLIC 组被授予在这个模式中创建对象的特权。

4
总结了对于用户或用户组可以授予和撤消的惟一一种表空间特权(USE)。USE 特权不能对 SYSCATSPACE 或任何系统临时表空间使用。


4. 表空间特权的总结

表空间特权
USE 允许用户在指定的表空间中创建表

5
总结了对于用户或用户组可以授予和撤消的模式特权类型。


5. 模式特权的总结

模式特权
CREATEIN 允许用户在模式中创建对象
ALTERIN 允许用户在模式中修改对象
DROPIN 允许用户从模式中删除对象

6
总结了对于用户或用户组可以授予和撤消的表/视图特权。


6. 表和视图特权的总结

/视图特权
CONTROL 授予用户在表和视图上的所有特权,以及将这些特权(除了 CONTROL)授予别人
ALTER 允许用户在表中添加列、在表和它的列上添加或修改注释、添加主键或惟一约束以及创建或删除表检查约束
DELETE 允许用户从表或视图中删除行
INDEX 允许用户在表上创建索引
INSERT 允许用户在表或视图中插入数据
REFERENCES 允许用户创建和删除外键,这需要指定关系中的父表
SELECT 允许用户从表或视图中检索行、在表上创建视图以及运行 EXPORT 实用程序
UPDATE 允许用户修改表、视图或者表或视图中某些列中的数据;用户可以只在特定列上具有这种特权

7
总结了对于用户或用户组可以授予和撤消的惟一一种索引特权(CONTROL)。


7. 索引特权的总结

索引特权
CONTROL 允许用户删除索引

8
总结了对于用户或用户组可以授予和撤消的包特权类型。静态和动态 SQL 考虑因素一节更详细地讨论包概念。


8. 包特权的总结

包特权
CONTROL 允许用户重新绑定、删除或执行包,以及将这些特权(除了 CONTROL)授予别人
BIND 允许用户重新绑定现有的包
EXECUTE 允许用户执行包

9
总结了对于用户或用户组可以授予和撤消的惟一一种例程特权(EXECUTE)。


9. 例程特权的总结

例程特权
EXECUTE 允许用户调用例程,从例程创建函数(只应用于函数),以及在任何 DDL 语句(比如 CREATE VIEWCREATE TRIGGER 或定义约束时)中引用例程

10
总结了对于用户或用户组可以授予和撤消的序列特权类型。


10. 序列特权的总结

序列特权
USAGE 允许用户对序列使用 NEXTVAL PREVVAL 表达式
ALTER 允许用户使用 ALTER SEQUENCE 语句修改序列属性

5.5    授予/撤消权限

授予特权

与实例级权限相似,可以使用命令语法或 Control Center 授予和撤消特权。要想授予或撤消特权,必须有数据库连接。图 6 显示表和视图特权的 GRANT 语句的语法图。其他数据库对象的 GRANT 语句语法是相似的,请参考
DB2 UDB
文档。


6. 表和视图的 GRANT 语句语法图

例如,要使用 GRANT 语句向用户
JEFF
授予
ACCOUNT
表的 INSERT 特权,那么发出以下语句:

GRANT INSERT ON TABLE account TO USER jeff

要向
SALESREPS
组授予
CUSTOMER
表的 SELECT 特权,那么发出以下语句:

GRANT SELECT ON TABLE customer TO GROUP salesreps

8. 表和视图的 REVOKE 语句语法图

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营