客户给了7个dmp文件共15G左右,需要导入到测试环境,结果导入是成功了,但中文都是乱码。也只怪自己没注意刚开始的提示信息:
import done in US7ASCII character set and AL16UTF16 NCHAR character set
import server uses WE8ISO8859P1 character set (possible charset conversion)
export client uses ZHS16GBK character set (possible charset conversion)
系统有提示编码对不上,查了半天只能重来了,幸好数据库是新安装的,20G的数据量还是比较大,于是先把表空间和用户都删除了干脆一干二净重来。
drop tablespace XXXX INCLUDING CONTENTS;
drop user XXXX cascade;
然后到之前存放数据文件的目录把20个数据文件也删除了。
附监听命令:
启动监听:lsnrctl start
查看监听:lsnrctl status
停止监听:lsnrctl stop
因安装oracle以及新建实例时未注意字符集,修改数据库字符集相对简单也方便就改数据库字符集了。按照网上:
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter system enable restricted session;
SQL> alter system set job_queue_processes=0;
SQL> alter database open;
SQL> alter database character set internal_use ZHS16GBK;
SQL> shutdown immediate;
SQL> startup;
结果关闭没问题,但不能启动了,报错信息:
SQL> startup nomount;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/home/oracle/oracle/product/10.2.0/db_3/dbs/initorcl.ora'
把数据库实例对应目录下的复制过去也不行,终于找到解决方法,在运行上面命令前,先把系统环境变量做修改
[oracle@localhost table_space]$ export ORACLE_SID=xxxx xxxx表示你的实例名即sid
[oracle@localhost table_space]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Dec 14 12:29:48 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
Connected to an idle instance.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 603979776 bytes
Fixed Size 1220796 bytes
Variable Size 113250116 bytes
Database Buffers 482344960 bytes
Redo Buffers 7163904 bytes
Database mounted.
SQL>
接下来继续剩余 的操作,因为系统是32位的,创建个大表空间还是有些麻烦:
create tablespace xxx datafile '/home/oracle/table_space/icms1.dat' SIZE 3G,
'/home/oracle/table_space/icms2.dat' SIZE 3G,'/home/oracle/table_space/icms3.dat' SIZE 3G,
'/home/oracle/table_space/icms4.dat' SIZE 3G,'/home/oracle/table_space/icms5.dat' SIZE 3G,
'/home/oracle/table_space/icms6.dat' SIZE 3G,'/home/oracle/table_space/icms7.dat' SIZE 3G,
'/home/oracle/table_space/icms8.dat' SIZE 3G,'/home/oracle/table_space/icms9.dat' SIZE 3G,
'/home/oracle/table_space/icms10.dat' SIZE 3G,'/home/oracle/table_space/icms11.dat' SIZE 3G,
'/home/oracle/table_space/icms12.dat' SIZE 3G,'/home/oracle/table_space/icms13.dat' SIZE 3G,
'/home/oracle/table_space/icms14.dat' SIZE 3G,'/home/oracle/table_space/icms15.dat' SIZE 3G,
'/home/oracle/table_space/icms16.dat' SIZE 3G,'/home/oracle/table_space/icms17.dat' SIZE 3G,
'/home/oracle/table_space/icms18.dat' SIZE 3G,'/home/oracle/table_space/icms19.dat' SIZE 3G,
'/home/oracle/table_space/icms20.dat' size 3g autoextend on next 1g maxsize unlimited;
一次性做了60G的表空间,注意上面表空间的名称最好与dmp文件中涉及到的表空间一致,我之前就有类似提示警告,导致有些脚本不能正常执行。接下来都完成后就是导入数据了:
imp system/manage@sid file=(/home/20111213DB_DUMP/ic_001.dump,....) log=import.log fromuser=xxxx touser=xxx
最后指定日志文件以观察导入进度和结果。
分享到:
相关推荐
Oracle IMP 导入数据乱码问题解决方法 OracleIMP 命令是 Oracle 数据库中的一种数据导入工具,但是在使用 IMP 命令导入数据时,经常会碰到乱码问题。这篇文章将从根本上解决了导入数据乱码的根源及解决办法。 IMP ...
在日常工作中,我们经常遇到数据库操作时中文显示不正确的问题,尤其是在使用 Oracle 的 `exp` 和 `imp` 命令进行数据导入导出以及通过 PL/SQL Developer 工具查询数据时出现中文乱码的情况尤为常见。本文将详细探讨...
错误信息"IMP-00019: 由于 ORACLE 错误 12899 而拒绝行IMP-00003: 遇到 ORACLE 错误 12899ORA-12899: 列 'JACKEYJ"."JK_REGISTER"."OPNAME" 的值太大 (实际值: 21, 最大值: 20)"表明某个表('JK_REGISTER')的特定...
标题中的“将excel文件用impexp32导入到oracle中.zip_ImpExp32_oracle_sql_txt”指的是一项操作,即将Excel数据导入到Oracle数据库中,使用了名为ImpExp32的工具,并且涉及到了SQL和文本文件的转换过程。这个过程...
在进行Oracle数据库的导入导出过程中,可能会遇到乱码问题。为了解决这个问题,可以从以下几个方面入手: 1. **在Web应用配置文件中增加Filter**:对于Web应用而言,可以在`web.xml`文件中配置过滤器来处理编码问题...
Oracle 数据导入导出是数据库管理中的重要操作,用于迁移数据、备份或恢复数据库。本文将详细介绍如何在 Oracle 数据库中进行数据的导入和导出,以及相关操作的注意事项。 首先,Oracle 数据导出通常使用 `exp` 或 ...
使用 imp 命令可以将 DMP 文件导入到 Oracle 数据库中。imp 命令的基本语法如下: imp username/password@database_name file=dmp_file 其中,username 是数据库的用户名,password 是密码,database_name 是...
通过对Oracle数据库安装、配置、管理、导入导出及数据清理等操作的详细介绍,我们可以看到Oracle数据库的强大功能和灵活性。无论是从安装注意事项还是具体的数据库管理操作,都需要仔细考虑和精心设计,以确保系统的...
提供的部分内容似乎是尝试使用某个命令来导入Oracle数据库,但由于格式问题,其中包含了乱码字符。我们尝试解读这部分内容: ``` impsystem/manager file=bible_db log=dible_db full=y ignore=y system/managerû ...
- 字符集设置中,`AMERICAN_AMERICA.ZHS16GBK` 是指定了美国地区,使用ZHS16GBK字符集,这可能与实际环境中的语言和地区设置不匹配,导致中文显示为乱码。 **解决方案**: 1. **修正注释符号**:将脚本中的 `#` ...
### Oracle 数据导入导出及常见问题 Oracle 数据库作为企业级数据库管理系统的首选之一,在日常运维工作中,数据的导入导出是一项非常重要的操作。本文将详细介绍如何在 Oracle 中进行数据的导入导出,并针对常见的...
Oracle EXPIMP工具是Oracle数据库系统中用于数据迁移和备份恢复的重要工具。虽然随着技术的发展,RMAN和其他第三方工具已经成为了大型数据库备份的主要选择,但在处理小型数据库、表空间迁移、表抽取以及解决逻辑和...
1. 数据泵(Data Pump):Oracle 10g引入了全新的数据迁移工具——数据泵(Data Pump),它比传统的EXP/IMP更高效、功能更强大。数据泵分为导出(Data Pump Export, EXPDP)和导入(Data Pump Import, IMPDP)两个...
在Linux环境下操作Oracle数据库,导入和导出DMP文件是一项常见的任务,这涉及到数据库的数据迁移、备份和恢复等场景。DMP(Data Pump Export)文件是Oracle数据库的一种数据导出格式,它包含了数据库对象的元数据和...
2. **导入表结构**:将这个dmp文件导入到出现问题的数据库的sys用户下,命令如下:`imp 'sys/oracle@orcl/sysdba'`。这一步将重建缺失的`argument$`表。 然而,在解决了`argument$`表的问题后,当再次尝试删除操作...
- `imp`: 表示这是Oracle的导入命令。 - `jbit/bdqn@orcl`: 这里指定了登录Oracle数据库的用户名/密码及连接字符串。 - `file=c:\Cinema.dmp`: 指定了要导入的数据文件位置。 - `full=y`: 表示进行全库导入。 - `...
- 使用`IMPDP sg_rue/sg_rue@orcl SCHEMAS=sg_rue DIRECTORY=dbexpdp_dir DUMPFILE=20170909.dmp LOGFILE=20170909_imp.log`命令将之前备份的数据导入到新的字符集环境下的数据库中。注意这里的用户名和密码需要...
【Oracle实用技巧】这篇文章主要介绍了在Oracle数据库移植过程中如何处理字符集问题以及使用Oracle的导入导出工具进行数据迁移的方法。Oracle数据库移植是一项常见的任务,尤其是在不同操作系统平台之间,这通常涉及...
Oracle的备份与恢复技术包括了多种方式,比如使用EXP/IMP工具进行数据的导出与导入,使用SQL*Loader进行数据加载,以及通过操作系统进行备份和恢复。此外,RMAN(Recovery Manager)是Oracle提供的一个专业的备份与...