我们在Docker容器上运行XE。在尝试导出表时,我收到以下错误
expdp test/test@XE tables=UserProfile directory=/tmp dumpfile=profile.dmp logfile=logger
ORA-39006: internal error
ORA-39213: Metadata processing is not available
我google了一下,发现我需要执行下面的命令但是也失败了
execute dbms_metadata_util.load_stylesheets
ERROR at line 1:
ORA-31609: error loading file "kucolumn.xsl" from file system directory
"/u01/app/oracle/product/11.2.0/xe/rdbms/xml/xsl"
ORA-06512: at "SYS.DBMS_METADATA_UTIL", line 2397
ORA-06512: at line 1
我遍历了目录,发现" xsl"缺少目录,默认情况下是否使用XE安装创建此目录,或者我们需要特定设置来获取" xsl"文件夹?
使用rpm -oracle-xe-11.2.0-1.0.x86_64.rpm安装XE。知道可能是什么问题吗?
答案 0 :(得分:0)
您指定为目录的值必须是Oracle数据库目录对象,而不是文件系统上目录的值。
create directory export_directory as '/tmp';
expdp test/test@XE tables=UserProfile directory=export_directory dumpfile=profile.dmp logfile=logger
答案 1 :(得分:0)
2011年https://community.oracle.com/thread/2278841对此进行了讨论。它说您必须从正在运行的安装中复制目录$ORACLE_HOME/rdbms/xml/xsl
。因此,问题似乎出在一个已知的问题上,如果您没有有效的安装,那么您很不幸。
问题似乎不仅仅限于Linux(我使用与OP相同的rpm),因为讨论中说可以正常运行的安装可能是“ 甚至一个Linux。”