oracle 11g导出遇到的问题总结

最近,单位刚升级了数据库,由oracle 10g升级到11.2.0.3,但是在导出数据文件时报ORA-01455:转换列溢出整数数据类型错误,后来经过查找,原来是由数据库客户端版本引起的,是因为本机的数据库客户端版本低于数据库服务器端版本,升级客户端版本即可。

在卸载客户端时才发现,原来要卸载客户端也是很麻烦的,下边我将完全卸载oracle 10g客户端的方法记录一下:

1.停止所有与ORACLE相关的服务。
2. 使用OUI(Oracle Universal Installer)卸载Oracle软件。
 oui工具在@oracle_home\bin路径下

3.删除注册表内容。
 
  运行regedit命令,删除下面内容:HKEY_LOCAL_MACHINE|SOFTWARE|ORACLE注册表键,删除此键。
 
  HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services,删除Services键下所有以oracle为首的键。
 
  HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services|Eventlog|Application,删除此键下所有以oracle为首的键。
 
  HKEY_CLASSES_ROOT,删除此键下所有以Ora,Oracle,Orcl,EnumOra 为前缀的键。
 
  HKEY_CURRENT_USER|Software| Microsoft|Windows|CurrentVersion|Explorer|MenuOrder|Start Menu|Programs, 删除此键下所有以oracle为首的键。
 
  HKEY_LOCAL_MACHINE|SOFTWARE|ODBC|ODBCINST.INI注册表键,删除了Microsoft ODBC FOR ORACLE注册表键以外的所有有Oracle字样的键值。
 
        LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services,删除以Oracle或OraWeb为前缀的键。
 
4. 删除环境变量。
  删除环境变量PATH中含有Oracle字样的值。

5.最后在文件系统内删除ORACLE相关的文件及目录;删除ORACLE_BASE目录。如果没有办法删除可能是因为你的机器上还开着跟oracle相关的应用程序,重启一下再删除即可。

至此旧的客户端完全卸载,安装新的客户端即可。

但是安装完新的客户端启动时,我又遇到了新的问题,plsql devloper可以连接,但是sqlplus不能链接,后来排查原因,原来是由环境变量导致的,path变量有问题,path变量的参数我们可以通过plsql devloper进行查找,在帮助---支持信息---路径中,如下图所示:

oracle 11g导出遇到的问题总结_第1张图片


把这里边的信息加分号且把中间的空格去掉,就是我们的path路径,修改完成以后,我的客户端就可以正常使用了。

再次测试导出的时候,又报EXP-00003: 未找到段 (0,0) 的存储定义警告,其实11g默认是不导出空表的,可以用alter table table_name allocate extent;设置一下就可以导出了。

 

补充:

今天同事在导出数据时遇到exp-00106:数据库链接口令无效的错误(由11.2.0.1的客户端导出11.2.0.3的数据库端数据),之前我也没遇到过,在网上查到是由于客户端版本的问题导致的,把客户端版本升级到11.2.0.3即可正常导出。

你可能感兴趣的:(备份,ORA-01455,oracle,11g,EXP-00003,path,oracle)