14.3.1 LogMiner的工作方式
《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第14章将会学习能够显著增强数据库应用程序可用性的各种功能特性的实现细节。本节说的是 LogMiner的工作方式。
14.3 使用LogMiner
Oracle使用联机重做日志文件来跟踪对用户数据和数据字典所做的每一处改动。在恢复过程中,使用存储在重做日志文件中的信息来重新创建部分或完整的数据库。为了支持将数据库恢复到创建了数据库备份之后的一个时间点,可以维护重做日志文件的归档副本。LogMiner实用程序提供了一种重要的视图来了解数据库中已经发生的改动。
当使用LogMiner时,可以看到已经做出的改动(SQL_redo)和可以用于还原这些改变的SQL(SQL_undo)。因此,可以查看数据库的历史记录而实际上不会应用任何重做日志,并可以获得用于还原有问题的事务处理的代码。使用LogMiner,可以指出首次出现损坏的事务处理,以便确定将合适的时间点或SCN用作数据库恢复的端点。
如果有少量的需要回滚的事务处理,在使用LogMiner之前,必须将表恢复到一个早期的状态,并且应用归档日志文件来将表前置到恰好在损坏出现之前的状态。当恢复表并应用归档日志文件时,将会有丢失随后想要保留的事务处理的风险。现在,可以使用LogMiner来仅仅回滚那些有问题的事务处理,而不会随后丢失有效的事务处理。
原始形式的LogMiner在使用上有一些限制。使用原始的方法,一次只能查看一个日志文件,并且该工具的界面使用起来很不方便。在Oracle 9i中,已经对该界面进行了重大改变,并大大增强了功能,包括一个和OEM(Oracle企业管理器)一起使用的LogMiner Viewer(LogMiner阅读器)。在本节中会对手动使用LogMiner的方法和OEM LogMiner Viewer予以介绍。
14.3.1 LogMiner的工作方式
为了运行LogMiner实用程序,必须拥有对DMBS_LOGMNR程序包的EXECUTE权限或者EXECUTE_CATALOG_ROLE角色。LogMiner需要数据字典来完全地翻译重做日志文件内容,并将内部对象标识符和数据类型转换为对象名和外部数据格式。如果不能使用数据字典,LogMiner将会返回以十六进制格式标识的数据和以内部对象ID表示的对象信息。
有三种选择来获得一个供LogMiner使用的数据字典:
● 将数据字典信息提取到一个平面文件中。
● 将数据字典提取到重做日志文件中。
● 从当前的数据库中使用联机数据字典。
LogMiner分析通常要求使用的数据字典源自于产生重做日志文件的同一个数据库。但是,如果正在使用平面文件格式或者正在使用源自重做日志文件的数据字典,则可以从LogMiner正在其上运行的数据库或从另一个数据库来分析重做日志文件。但是,如果正从当前的数据库中使用联机目录,只能从当前的数据库来分析重做日志文件。
由于可以从一个数据库中依据另一个数据库中的重做日志文件来运行LogMiner,这两个数据库上使用的字符集必须匹配。硬件平台也必须和生成重做日志文件时采用的平台相匹配。
回书目 上一节 下一节 |