CH07_数据库保护与备份恢复.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
共享表封锁(SHARE) 实现共享表封锁命令如下: LOCK TABLE tablename IN SHARE MODE; 一旦该表实现共享封锁,其他事务可在该表上做查询和再实现共享表操作,但不能修改该表,同时也不能做如下封锁: LOCK TABLE tablename IN SHARE ROW EXCLUSIVE MODE; LOCK TABLE tablename IN EXCLUSIVE MODE; LOCK TABLE tablename IN ROW EXCLUSIVE MODE; 共享行排他表封锁(SHARE ROW EXCLUSIVE) 实现共享行排他表封锁使用如下命令: LOCK TABLE tablename IN SHARE ROW EXCLUSIVE MODE; 这种封锁比表封锁具有更多的限制,它之允许其他事务作查询、封锁其他行,但不允许修改表。一旦表使用了这种锁,下列锁均不可使用: LOCK TABLE tablename IN SHARE MODE; LOCK TABLE tablename IN SHARE ROW EXCLUSIVE MODE; LOCK TABLE tablename IN ROW EXCLUSIVE MODE; LOCK TABLE tablename IN EXCLUSIVE MODE; 排他表封锁 (EXCLUSIVE) 排他表封锁是最严格的方式,允许持有封锁的事务对该表做写存取,其他事务可以做查询操作,但插入、删除、修改等操作均不允许。实现排他表封锁使用如下命令: LOCK TABLE tablename IN EXCLUSIVE MODE; 会话控制 ALTER SESSION { ADVISE { COMMIT | ROLLBACK | NOTHING } | CLOSE DATABASE LINK dblink | { ENABLE | DISABLE } COMMIT IN PROCEDURE | { ENABLE | DISABLE | FORCE } PARALLEL { DML | DDL | QUERY } [ PARALLEL integer ] | { ENABLE RESUMABLE [ TIMEOUT integer ] [ NAME string ] | DISABLE RESUMABLE } | alter_session_set_clause } ; ADVISE子句 用于向远程数据库发送忠告。 在提交一个分布式事务处理的过程中,由于网络故障或机器故障,会使该分布事务的状态是未知的或是悬而未决的。该事务在它所涉及的每一个数据库上可利用带FORCE子句的COMMIT语句或ROLLBACK语句进行手工提交或回滚。 提交一个分布式事务之前,可以使用ALTER SESSION命令的ADVISE子句向远程数据库发送忠告。如果事务为悬而未决的,该忠告将出现在远程数据库的DBA_2PC_PENDING视图的ADVISE字段上,该数据库的管理员利用该忠告决定在远程数据库上提交或回滚事务。 单个事务中,可发出多个带ADVISE子句的ALTER SESSION命令。每个语句将忠告发送到该事务中在它之后语句所涉及的数据库,直到下一个忠告语句。可发送不同忠告到不同的数据库。 CLOSE DATABASE LINK子句 该子句用于关闭数据库链路。一旦与远程数据库建立起远程链路,在会话时就可以对远程数据库进行DELETE、INSERT、LOCK TABLE、SELECT和UPDATE等操作。要想显式地关闭一个数据库链路,可以使用ALTER SESSION 命令。注意,关闭数据库链路必须完成提交任务。 ENABLE | DISABLE COMMIT IN PROCEDURE 由于过程和存储函数是用PL/SQL语言编写的,所有允许使用COMMIT/ROLLBACK语句。而在执行记录管理的应用程序中不能直接使用COMMIT或ROLLBACK语句,因为它干扰记录管理,为了防止在会话中调用的过程和函数发出这些语句,可以使用下列命令: ALTER SESSION DISABLE COMMIT IN PROCEDURE; SET ROLE 命令 SET ROLE { role [IDENTIFIED BY password] [, role [IDENTIFIED BY password]]... | ALL [EXCEPT role [, role]...] | NONE }; ALL 表示起用所有的角色 NONE 表示撤消所有的角色 EXCEPT 除EXCEPT之后角色以外使用的角色 例:使授权给用户

文档评论(0)

22255990 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档