Oracle数据库11g新特性:事务管理
2008-12-16 13:03:10 来源:WEB开发网核心提示: 如您所见,您可以使用数据库控制搜索和识别事务,Oracle数据库11g新特性:事务管理(3),单击按钮 Previous Transaction 和 Next Transaction 可以滚动浏览通过搜索找到的所有事务,使用案例如何使用这一特性?有几种方法,但是,问题是,最重要的用途可能就
如您所见,您可以使用数据库控制搜索和识别事务。单击按钮 Previous Transaction 和 Next Transaction 可以滚动浏览通过搜索找到的所有事务。
使用案例
如何使用这一特性?有几种方法。最重要的用途可能就是查清“谁”做了“什么”。如果由于性能原因您没有启用审计,或者仅仅是没有保留审计记录,您只需通过挖掘重做日志(在线的和存档的)在 LogMiner 界面中搜索相关线索即可。在搜索屏幕中,您可以在 Query Filter 下的 Advanced Query 域中输入附加过滤条件。
假设,您要查找一个插入、删除或更新了 RES_ID = 100002 的记录的事务。您可以使用 dbms_logmnr 程序包中的 column_present 函数在重做流中搜索具体的值,如下所示:
这个函数将会提取 SCOTT 模式下 RES 表的 RES_ID 列中包含 100002 的所有事务。
您还可以使用该特性掘出针对该数据库执行的 DDL 命令。要实现这一目的,选择 Query Filter 部分中的单选按钮 View DDL Only 即可。
收回选定的事务
在检查一个事务时,您想怎样处理这个事务?一种想法是将其撤消,因为此事务的执行有误,这或许是您查找该事务的首要原因。这非常简单。如果该事务是一个插入,您只需将其删除即可;如果它是一个更新,则撤消会将该行还原至前一个值。
然而,请仔细观察本例中使用的事务。第一个事务插入了一行。第二个事务更新了刚插入的行,而第三个事务将那一行删除了。第一个事务(插入)就是您要收回的事务。但是,问题是,那一行已经被后续的事务删除了,那么在本例中撤消事务是什么呢?
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接