使用传统的exp/imp 导出/导入数据
数据库介绍
需导出的数据库
版本10.02.01
用户emm_jx/emms_jx
表空间TBS_EMMS
导出需注意的问题:
数据库的字符集要和客户端的字符集相同
SQL>select userenv('language') from dual;
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
echo $NLS_LANG
export NSL_LANG='AMERICAN_AMERICA.ZHS16GBK'
EXP/IMP的详细用法:
$ exp help=y
$ imp help=y
USERID:指定执行导出/导入操作的数据库用户,整个参数名称可以省略。
FILE:指定导出所产生的文件,导入时要读这个文件。
TABLES:指定要导出/导入的表。
OWNER:指定要导出/导入的用户。
BUFFER:以字节为单位,指定缓冲区的大小。缓冲区越大,导出/导入的效率越高。
FULL:指定是否要对整个数据库进行导出/导入。
GRANTS:指定是否导出表上的权限。
ROWS:指定是否只导出/导入表的结构和表上的对象,而不导出/导入表中的数据。
DIRECT:指定是否使用直接路径导出的方式。
RECORDLENGTH:在以直接路径方式导出数据时,指定缓冲区的大小。
对单个表进行导出:
exp emms_jx/emms_jx FILE=emms_jx_send_task_logs.exp tables=send_task_logs LOG=log.log
对单个用户进行导出:
exp emms_jx/emms_jx FILE=emms_jx.dmp OWNER=emms_jx LOG=log.log
对整个数据库进行导出:
exp emms_jx/emms_jx FULL=y FILE=jxdb.exp GRANTS=y ROWS=y LOG=log.log
需要导入的数据库
版本11.2.0.1.0
用户JX/tiger
表空间EMMS_JX
导入需注意的问题:
数据库的字符集要和客户端的字符集相同
遇到的错误:
IMP-00003: ORACLE error 1652 encountered
ORA-01652: unable to extend temp segment by 128 in tablespace TEMPTS
解决:增加临时表空的大小。
SQL>alter temporary tmpfile1
IMP-00017: following statement failed with ORACLE error 959:
"CREATE TABLE "MMCONTENT" ("ID" VARCHAR2(40 CHAR), "TERMINAL_TYPE" VARCHAR2(50 CHAR) NOT NULL ENABLE,
"PROVINCE_NUMBER" VARCHAR2(5 CHAR), "REGION_NUMBER" VARCHAR2(5 CHAR), "MM_SIZE" VARCHAR2(10 CHAR),
"TIMESTAMP" TIMESTAMP (6), "LAST_MODIFY" TIMESTAMP (6), "DATA" BLOB,"MOBILEBRAND" NUMBER(1, 0))
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
STORAGE(INITIAL 11534336 NEXT 1048576 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "TBS_EMMS" LOGGING NOCOMPRESS LOB ("DATA")
STORE AS (TABLESPACE "TBS_EMMS" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10 NOCACHE LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))"
IMP-00003: ORACLE error 959 encountered
ORA-00959: tablespace 'TBS_EMMS' does not exist
原因该表有LOB字段,创建语句上指定了表空间。
解决:
先创建好该表
或者rename表空间后再导入 导入时输入ignore=y
imp JX/tiger file=emms_jx.dmp log=log.log fromuser=EMMS_JX touser=JX ignore=y
数据库介绍
需导出的数据库
版本10.02.01
用户emm_jx/emms_jx
表空间TBS_EMMS
导出需注意的问题:
数据库的字符集要和客户端的字符集相同
SQL>select userenv('language') from dual;
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
echo $NLS_LANG
export NSL_LANG='AMERICAN_AMERICA.ZHS16GBK'
EXP/IMP的详细用法:
$ exp help=y
$ imp help=y
USERID:指定执行导出/导入操作的数据库用户,整个参数名称可以省略。
FILE:指定导出所产生的文件,导入时要读这个文件。
TABLES:指定要导出/导入的表。
OWNER:指定要导出/导入的用户。
BUFFER:以字节为单位,指定缓冲区的大小。缓冲区越大,导出/导入的效率越高。
FULL:指定是否要对整个数据库进行导出/导入。
GRANTS:指定是否导出表上的权限。
ROWS:指定是否只导出/导入表的结构和表上的对象,而不导出/导入表中的数据。
DIRECT:指定是否使用直接路径导出的方式。
RECORDLENGTH:在以直接路径方式导出数据时,指定缓冲区的大小。
对单个表进行导出:
exp emms_jx/emms_jx FILE=emms_jx_send_task_logs.exp tables=send_task_logs LOG=log.log
对单个用户进行导出:
exp emms_jx/emms_jx FILE=emms_jx.dmp OWNER=emms_jx LOG=log.log
对整个数据库进行导出:
exp emms_jx/emms_jx FULL=y FILE=jxdb.exp GRANTS=y ROWS=y LOG=log.log
需要导入的数据库
版本11.2.0.1.0
用户JX/tiger
表空间EMMS_JX
导入需注意的问题:
数据库的字符集要和客户端的字符集相同
遇到的错误:
IMP-00003: ORACLE error 1652 encountered
ORA-01652: unable to extend temp segment by 128 in tablespace TEMPTS
解决:增加临时表空的大小。
SQL>alter temporary tmpfile1
IMP-00017: following statement failed with ORACLE error 959:
"CREATE TABLE "MMCONTENT" ("ID" VARCHAR2(40 CHAR), "TERMINAL_TYPE" VARCHAR2(50 CHAR) NOT NULL ENABLE,
"PROVINCE_NUMBER" VARCHAR2(5 CHAR), "REGION_NUMBER" VARCHAR2(5 CHAR), "MM_SIZE" VARCHAR2(10 CHAR),
"TIMESTAMP" TIMESTAMP (6), "LAST_MODIFY" TIMESTAMP (6), "DATA" BLOB,"MOBILEBRAND" NUMBER(1, 0))
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
STORAGE(INITIAL 11534336 NEXT 1048576 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "TBS_EMMS" LOGGING NOCOMPRESS LOB ("DATA")
STORE AS (TABLESPACE "TBS_EMMS" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10 NOCACHE LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))"
IMP-00003: ORACLE error 959 encountered
ORA-00959: tablespace 'TBS_EMMS' does not exist
原因该表有LOB字段,创建语句上指定了表空间。
解决:
先创建好该表
或者rename表空间后再导入 导入时输入ignore=y
imp JX/tiger file=emms_jx.dmp log=log.log fromuser=EMMS_JX touser=JX ignore=y
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27064835/viewspace-1685305/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/27064835/viewspace-1685305/