字符集导致问题,解决办法有两种:
1.命令末尾添加statistics=none忽略统计信息
SQL> exp system/**** file=c:\orcl.dump full=y statistics=none
2.更改字符集为数据库默认字符集ZHS16GBK
(sql语句出现ORA-01401: 插入的值对于列过大<因为字符导致数值长度不匹配>也可通过此方法解决)
C:\Windows\system32>set ORACLE_SID=orcl
C:\Windows\system32>conn /as sysdba
SQL> shutdown immediate;
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL> ALTER DATABASE OPEN;
SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
SQL> shutdown immediate;
SQL> startup ;
SQL> select * from v$nls_parameters;
如果要改回字符集AL32UTF8,同理
SQL> shutdown immediate;
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL> ALTER DATABASE OPEN;
SQL> ALTER DATABASE character set INTERNAL_USE AL32UTF8;
SQL> shutdown immediate;
SQL> startup;
SQL> select * from v$nls_parameters;
附:如出现CMD中Sqlplus乱码,则只需修改字符集变量配置,参考
https://blog.csdn.net/qq_41783491/article/details/108931474