导出oracle数据库转储文件后,使用exp命令并且没有警告,我尝试使用imp命令导入它。导入过程很有效,直到最后一个表结束,之后出现以下窗口错误:
“ctxhx.exe已停止工作”
导入过程会在dos窗口中无限期地持续几个小时,而窗口会在我关闭弹出窗口后定期显示上述错误。似乎在解决此exe问题之前无法完成导入。
我已经完成了从我的系统中完全卸载oracle 10g r2数据库,使用Oracle Universal Installer以及之后的清理注册表以及主文件夹等。然后安装了同样的oracle 10g r2 fresh。
我已经使用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命令之前,我确保将cf文件复制到c盘上的所述文件夹中。
该文件夹设置为只读,我无法更改它,因为每次我更改它,从Windows或DOS,它会自动设置为只读。这应该不是问题,因为在生产中它具有相同的只读设置并且运行正常。
windows server 2008. oracle 10g r2企业版。 64位机器和oracle。