14.3.2 提取数据字典 将数据字典提取到平面文件中的一个潜在问题是,当正在提取数据字典的时候,其他人可能正在发送DDL语句。因此,提取出的数据字典可能和数据库不同步。相比于使用重做日志文件,使用平面文件来存储数据字典时需要更少的系统资源。 当提取
14.3.2 提取数据字典
将数据字典提取到平面文件中的一个潜在问题是,当正在提取数据字典的时候,其他人可能正在发送DDL语句。因此,提取出的数据字典可能和数据库不同步。相比于使用重做日志文件,使用平面文件来存储数据字典时需要更少的系统资源。
当提取数据字典到重做日志文件时,在提取数据字典的过程中不能处理DDL语句。因此,字典将会和数据库同步。提取过程更加耗费资源,但是更为迅速。
为了将数据字典提取到平面文件或重做日志文件中,可以使用DBMS_LOGMNR_D.BUILD程序。数据字典文件放置在一个目录中。因此,必须拥有放置该文件的目录的写权限。为了定义目录的位置,使用初始化参数UTL_FILE_DIR。例如,为了指定位置D:\Oracle\Ora10\database作为LogMiner的输出位置,将以下的记录项放在参数文件中:
UTL_FILE_DIR= D:\Oracle\Ora10\database 登录后复制 |
注意:
不能使用alter system命令动态地改变UTL_FILE_DIR参数。必须修改初始化文件,然后停止并重启数据库。
为了执行DBMS_LOGMNR_D.BUILD程序,必须为目录指定文件名,为文件指定目录路径名,并指定希望将目录写入到平面文件中还是重做日志文件中。为了将数据字典提取到位于G:\Oracle\Ora10\database目录中的文件名为mydb_dictionary的平面文件中,可以发出如下命令:
execute DBMS_LOGMNR_D.BUILD ('mydb_dictionary.ora', 'G:\Oracle\Ora10\database', options=>DBMS_LOGMNR_D.STORE_IN_FLAT_FILE); 登录后复制 |
可以使用DBMS_LOGMNR_D.STORE_IN_FLAT_FILE作为其他的可选项。
一旦将字典存储在平面文件中,可以将它复制到另一个平台来运行LogMiner。可能需要运行其他数据库上的dbmslmd.sql来建立正确的环境。可以在Unix系统上的$ORACLE_HOME\rdbms\admin目录中找到dbmslmd.sql文件。
【责任编辑:董书 TEL:(010)68476606】
回书目 上一节 下一节 |
原文:14.3.2 提取数据字典返回读书频道首页