在导出 oracle 数据库转储文件后,使用 exp 命令并且没有警告,我正在尝试使用 imp 命令导入它。导入过程一直有效,直到最后一个表结束,之后出现以下 Windows 错误:
“ctxhx.exe 已停止工作”
导入过程会在 dos 窗口中无限期地持续几个小时,而在我关闭弹出窗口后,Windows 会定期显示上述错误。似乎在解决此 exe 问题之前无法完成导入。
我已经从我的系统中完全卸载了 oracle 10g r2 数据库,使用 Oracle Universal Installer 并在清理注册表以及主文件夹等之后。然后重新安装了相同的 oracle 10g r2。
我以前多次使用 exp 和 imp 命令导出和导入同一个数据库,从来没有出现过问题。
我正在使用 OracleText 索引硬盘上的 pdf 文件,因此创建了首选项、索引和目录。
问题仅在开发机器中。具有完全相同配置(windows 版本、oracle 版本和版本等)的生产服务器工作正常。
每次我在开发机器上导入数据库时,我都会运行以下脚本:
connect
sys as sysdba
<password>
drop user dms cascade;
create user dms identified by pqrs;
grant connect to dms;
grant create session to dms;
grant create any sequence to dms;
grant drop any sequence to dms;
grant create any directory to dms;
grant drop any directory to dms;
grant dba to dms;
grant sysdba to dms;
grant execute on ctxsys.ctx_ddl to dms;
create or replace directory documents as 'c:\uploadedFiles';
quit;
c:\>imp
转储文件创建只有一个用户 dms 的数据库(模式 + 数据 + 过程等)。
在运行 imp 命令之前,我确保将 pdf 文件复制到 c 驱动器上的上述文件夹中。
该文件夹设置为只读,我无法更改它,因为每次我从 windows 或 dos 更改它时,它都会自动设置为只读。这应该不是问题,因为在生产中它具有相同的只读设置并且运行良好。
windows server 2008. oracle 10g r2 企业版。64 位机器和甲骨文。