今天很奇怪,导入一个单表报错ORA-01401的错误,网上也搜了一圈,和我的情况不一样。这个错误是由于导出dmp文件的时候字符的存储字节不一样。我的数据库是11g11.2.0.1.0的,默认选的是ZHS16GBK编码方式,要导入的是学校10g数据库导出备份的一个dmp文件,最后没办法按照一个ORA-12899错误处理问题解决了。
操作步骤如下
SQL> shutdown immediate
Database closed.
Database dismounted.
Oracle instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 1653518336 bytes
Fixed Size 2228904 bytes
Variable Size 1006636376 bytes
Database Buffers 637534208 bytes
Redo Buffers 7118848 bytes
Database mounted.
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
System altered.
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
System altered.
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
System altered.
SQL> ALTER DATABASE OPEN;
Database altered.
SQL> ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
Database altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.
Total System Global Area 1653518336 bytes
Fixed Size 2228904 bytes
Variable Size 1006636376 bytes
Database Buffers 637534208 bytes
Redo Buffers 7118848 bytes
Database mounted.
Database opened.
SQL>
最后客户端导入成功
在CentOS 6.4下安装Oracle 11gR2(x64)