Oracle 11G 数据库迁移手册

合集下载

Oracle11g数据迁到Oracle10g(expdp和impdp)

Oracle11g数据迁到Oracle10g(expdp和impdp)

Oracle11g数据迁到Oracle10g(expdp和impdp)由于客户要求,要把一个Oracle11g数据库迁移到一个Oracle10g ,由于deferred_segment_creation参数建库之初没有设置为false,并且目前存在空表,所以还是使用expdp和impdp。

1、expdp和rman相像的地方时都是在主机端(目标数据库端)生成dmp文件所以文件夹和权限等都在主机端设置。

2、由于是从11g迁移到10g,所以expdp增加了一个参数 version在需要迁移的目标数据库端执行 select * from v$version; 就知道version的值了,不然会报错。

【报错内容ORA-39001: invalid argument valueORA-39000: bad dump file specificationORA-39142: incompatible version number】expdp opsteel/opsteel dumpfile=20150923.dmp logfil e=exp20150923.logdirectory=expdp_dir schemas=opsteel version=10.2.0.1.03、impdp和 ORA-39125这个错误出现在10.2.0.4之前的版本,需要加参数exclude=statistics就可以10.2.0.4是否不需要加,忘了测试了,明天测试一把,看metalink 10.2.0.4已经修订了这个BUG【报错内容ORA-39125: KUPW$WORKER.PUT_DDLS[DBMS_METADATA.CONVERT]调用出错ORA-06502:LPX-00210:】最终的impdp的语法impdp opsteel/opsteel dumpfile=20150923.dmp logfil e=imp20150923.logDIRECTORY=impdp_dir SCHEMAS=opsteel version=10.2.0.1.0 exclude=statistics。

ORACLE 11g数据导入导出

ORACLE 11g数据导入导出

导入时选 择合理的 parallel, 是可以降 低导入数 据时的时 间的,导 入数据时 指定 parallel 值,实际 是用在了 创建索引 的并行度 上 所以在导 入操作时 选择较大 的并行 度,是可 以大幅度 降低提高 创建索引 的速度, 从而加快 导入时的 速度。当 然度如增果 加并 到 太大的 值,会产 生I/O和 锁之类的 竞争,导 致导入速 度降低。
2)改变表 的owner impdp system/D igicom201 4 DIRECTO RY=exp_d ir2 DUMPFIL E=exp_sc ott.dmp TABLES= scott.dep t REMAP_S CHEMA= scott:syst 先导出 scott用户 中的数 据,然后 将此用户 下的表 dept的归 属权转移 给system 用户
导出完 成:
导出的文 件:
6)带出整 个数据库 在DOS环 境下输入 expdp system/D igicom201 4 directory =exp_dir2 dumpfile = full_demo. dmp logfile = full_demo.
导出成 功:
查看导出 文件:
数据导入:
导出成功 。
导出的文 件:
3)按表名 导出 在DOS中 输入: expdp system/D igicom201 4@myorcl tables=st udent dumpfile= table_dem o.dmp directory =exp_dir2 logfile=ta ble_demo.l og
执行结束
查看dept 表的 owner
3)导入表 空间 impdp system/D igicom201 4 DIRECTO RY=exp_d ir2 DUMPFIL E=tablesp ace_demo .dmp TABLES PACES=s ystem;

Oracle11g数据库导入Oracle10g操作成功

Oracle11g数据库导入Oracle10g操作成功

一次Oracle11g数据库导入Oracle10g数据库操作笔记注:导入和导出的用户名一定要一致(sybj)一、在11g服务器上,用expdp命令备份数据。

用cmd打开,dos命令输入以下:EXPDP USERID='SYS/cuc2009@cuc as sysdba' schemas=sybj directory=DATA_PUMP_DIR dumpfile=dag.dmp logfile=dag.log version=10.2.0.1.0其中,红色文字部分是根据需要改写的地方。

例如我的sys密码是cuc2009,数据库sid是cuc,要到出的用户名是sybj,要导入到10.2.0.1.0版本的Oracle数据库中去。

aa.dmp和aa.log将会在11g的dpdump目录中生成,例如我的11g装在了E盘下面,于是aa.dmp 将会在E:/app/Administrator/admin/cuc/dpdump目录下被生成。

二、在10g服务器上,使用impdp命令恢复数据步骤:(1.建库2.建表空间3.建用户并授权)(1-3可以不按下面走单,要建立一个登陆名与导出一致就可以了)4.将dag.dmp拷贝到10g的dpdump目录下5.impdp导入数据库1、建库:是在database configuration assistant 中直接新建一个数据库(实例)。

2、建表空间:create tablespace sybj datafile'D:\oracle\product\10.2.0\oradata\orcl\oa.dbf' size 400m autoextend on next 20m online;3、建用户:create user sybj identified by sybj;授权:Alter user sybj default tablespace sybj quota unlimited on sybj;grant create session to sybj;grant connect to sybj;grant connect, resource, dba to sybj;grant create table to sybj;grant create view to sybj;grant create trigger to sybj;grant select any table to sybj;grant create sequence to sybj;grant create procedure to sybj;grant create role to sybj;grant create type to sybj;grant GRANT ANY PRIVILEGE to sybj;4、导入:首先测试机中10g装在了D:/根目录下,于是将dag.dmp文件copy到了D:\oracle\product\10.2.0\admin\daggis\udump目录下。

oracleg数据库导入导出方法教程

oracleg数据库导入导出方法教程

oracleg数据库导入导出方法教程Oracle 11g 是一种关系型数据库管理系统,它具有很多强大的功能,包括数据导入和导出。

在本教程中,我们将介绍 Oracle 11g 数据库的导入和导出方法。

导出数据的方法有两种,一种是使用 exp 工具,另一种是使用expdp 工具。

exp 工具是在 Oracle 11g 之前版本中使用的,而 expdp工具是在 Oracle 11g 之后版本中引入的。

在这个教程中,我们将使用expdp 工具来导出数据。

导出数据的步骤如下:1. 打开终端或命令提示符,并登录到您的 Oracle 数据库。

2.使用以下命令导出整个数据库:```sql```其中,username 是数据库用户名,password 是密码,connect_string 是连接字符串,directory_name 是要导出数据的目录名称,dumpfile_name 是要导出数据的文件名称。

例如,如果要导出一个用户的数据,可以使用以下命令:```sql```这将导出 hr 用户的数据到 datapump 目录,并生成一个 hr.dmp 文件。

3.数据导出完成后,您可以在指定目录下找到生成的导出文件。

导入数据的方法也有两种,一种是使用 imp 工具,另一种是使用impdp 工具。

在这个教程中,我们将使用 impdp 工具来导入数据。

导入数据的步骤如下:1. 打开终端或命令提示符,并登录到您的 Oracle 数据库。

2.使用以下命令导入数据:```sql```其中,username 是数据库用户名,password 是密码,connect_string 是连接字符串,directory_name 是导入数据的目录名称,dumpfile_name 是要导入的数据文件的名称。

例如,如果要导入一个用户的数据,可以使用以下命令:```sql```这将导入 hr 用户的数据,该数据文件位于 datapump 目录下的hr.dmp 文件。

oracle 数据迁移方案

oracle 数据迁移方案

Oracle 数据迁移方案1. 简介随着业务的发展和系统的升级,数据迁移已经成为一个不可避免的任务。

在Oracle 数据库中,数据迁移主要包括迁移数据表、迁移数据对象以及导出和导入数据等方面。

本文将介绍一些常用的 Oracle 数据迁移方案。

2. 数据表迁移2.1 导出数据表Oracle 数据表的导出可通过使用expdp命令来实现。

该命令可以将指定的数据表导出为二进制格式的文件,以供后续导入使用。

以下是导出数据表的步骤:1.打开终端或命令行窗口,登录到数据库。

2.运行以下命令导出数据表:expdp username/password@connect_string tables=table1,table2 directory=datapump_dir dumpfile=tables.dmp logfile=tables.log–username/password:登录数据库的用户名和密码。

–connect_string:数据库连接字符串。

–tables:要导出的数据表名称,多个表名之间用逗号分隔。

–directory:导出文件存储的目录。

–dumpfile:导出文件的名称。

–logfile:导出日志文件的名称。

2.2 导入数据表使用impdp命令可以将之前导出的数据表文件导入到目标数据库中。

以下是导入数据表的步骤:1.打开终端或命令行窗口,登录到目标数据库。

2.运行以下命令导入数据表:impdp username/password@connect_string directory=datapump_d ir dumpfile=tables.dmp logfile=import.log–username/password:登录目标数据库的用户名和密码。

–connect_string:目标数据库的连接字符串。

–directory:导出文件存储的目录。

–dumpfile:导出文件的名称。

–logfile:导入日志文件的名称。

oracle11g数据库导入导出方法教程

oracle11g数据库导入导出方法教程

oracle11g数据库导入导出方法教程oracle11g数据库导入导出:①:传统方式——exp(导出)和(imp)导入:②:数据泵方式——expdp导出和(impdp)导入;③:第三方工具——PL/sql Develpoer;一、什么是数据库导入导出?oracle11g数据库的导入/导出,就是我们通常所说的oracle数据的还原/备份。

数据库导入:把.dmp 格式文件从本地导入到数据库服务器中(本地oracle测试数据库中);数据库导出:把数据库服务器中的数据(本地oracle测试数据库中的数据),导出到本地生成.dmp格式文件。

.dmp 格式文件:就是oracle数据的文件格式(比如视频是.mp4 格式,音乐是.mp3 格式);二、二者优缺点描述:1.exp/imp:优点:代码书写简单易懂,从本地即可直接导入,不用在服务器中操作,降低难度,减少服务器上的操作也就保证了服务器上数据文件的安全性。

缺点:这种导入导出的速度相对较慢,合适数据库数据较少的时候。

如果文件超过几个G,大众性能的电脑,至少需要4~5个小时左右。

2.expdp/impdp:优点:导入导出速度相对较快,几个G的数据文件一般在1~2小时左右。

缺点:代码相对不易理解,要想实现导入导出的操作,必须在服务器上创建逻辑目录(不是真正的目录)。

我们都知道数据库服务器的重要性,所以在上面的操作必须慎重。

所以这种方式一般由专业的程序人员来完成(不一定是DBA(数据库管理员)来干,中小公司可能没有DBA)。

3.PL/sql Develpoer:优点:封装了导入导出命令,无需每次都手动输入命令。

方便快捷,提高效率。

缺点:长时间应用会对其产生依赖,降低对代码执行原理的理解。

三、特别强调:目标数据库:数据即将导入的数据库(一般是项目上正式数据库);源数据库:数据导出的数据库(一般是项目上的测试数据库);1.目标数据库要与源数据库有着名称相同的表空间。

Oracle 11g数据导入到10g数据库

Oracle 11g数据导入到10g数据库

在10g服务器的D盘创建文件夹'datadump'。

将从11g服务器导出的数据库文件orcl_1(his_dp).dmp放到该目录下。

①进入到命令提示符号开始”——“运行”——输入“CMD”回车②输入“sqlplus”回车③输入“system”回车④输入密码(密码输入时是不可见的,此密码是在安装oracle10G时设置的)"orcl"⑤现在已经登陆了oracle,输入“drop user @数据库方案名 cascade;”回车⑥输入“CREATE USER @数据库方案名 identified by @数据库方案密码;”回车⑦输入“Grant dba to @数据库方案名;”回车⑧输入“Create tablespace dzh_datadatafile 'D:\oracle\dzh_data01.dbf'size 3M reuse autoextend on next 5M maxsize 4096M;”回车创建表空间⑨输入“CREATE TEMPORARY TABLESPACE dzh_temptempfile 'D:\oracle\dzh_temp.dbf'size 2M reuse autoextend on next 5M maxsize 4096M;”回车创建临时表空间⑩输入“Alter user @数据库方案名 temporary tablespace dzh_temp;”回车指定数据库方案存放表空间输入“Alter user @数据库方案名 default tablespace dzh_data;”回车指定数据库方案临时表空间11 输入“create directory dumpdir as 'D:\datadump';”回车如果要删除 drop directory dumpdir;输入“grant read,write on directory dumpdir to @数据库方案名;”回车12 输入“exit”回车,退出sqlplus命令行。

数据库(10g to 11g)迁移流程

数据库(10g to 11g)迁移流程

一.准备工作1.确认字符集为保证数据一致,新旧数据库的字符集必须统一。

查询语句:select * from V$NLS_PARAMETERS where parameter in('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');MES 10g2.确认用户角色首先在10g数据库上查询当前用户的角色,之后在11g库中查询刚才的用户所拥有的角色在11g库中是否存在。

查询语句:select * from dba_role_privs where grantee IN ('MESPROD','LBLPROD');每个应用用户均需查询,如果发现有系统默认没有的用户自建角色,需要在11g库中新建该角色,角色创建语句可以在10g库中由plsql developer软件进行自动生成。

3.新建表空间在11g数据库中新建以下表空间:CREATE TABLESPACE "TS_MES_DAT" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_HISTORY_DAT" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_MES_IDX" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_HISTORY_IDX" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_LABEL_DAT" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_LABEL_IDX" SIZE 1G maxsize unlimited;4.新建用户在11g数据库中新建以下用户:-- Create the usercreate user MESPROD identified by mesproddefault tablespace USERStemporary tablespace TEMPprofile DEFAULT;-- Grant/Revoke object privilegesgrant execute on SYS.DBMS_DEFER_IMPORT_INTERNAL to MESPROD;grant execute on SYS.DBMS_EXPORT_EXTENSION to MESPROD;-- Grant/Revoke role privilegesgrant connect to MESPROD;grant dba to MESPROD;grant mw_role_dba to MESPROD;grant resource to MESPROD;-- Grant/Revoke system privilegesgrant create any index to MESPROD;grant create any table to MESPROD;grant drop any table to MESPROD;grant unlimited tablespace to MESPROD;-- Create the usercreate user LBLPROD identified by lblproddefault tablespace USERStemporary tablespace TEMPprofile DEFAULT;-- Grant/Revoke role privilegesgrant connect to LBLPROD;grant dba to LBLPROD;grant mw_role_dba to LBLPROD;grant resource to LBLPROD;-- Grant/Revoke system privilegesgrant unlimited tablespace to LBLPROD;二.导出数据库导出语句:(耗时约1小时,如果在服务器上导出,需要修改路径)expmesprod/*************.10.100:1521/MESfull=yfile=e:\mesprod.dmplog=e:\mesprodlog owner=(MESPROD,LBLPROD)导出过程中,遇到的报错及解决方式:报错1:EXP-00008: ORACLE error 6550 encounteredORA-06550: line 1, column 18:PLS-00201: identifier 'SYS.DBMS_DEFER_IMPORT_INTERNAL' must be declared 解决方法:GRANT EXECUTE ON SYS.DBMS_DEFER_IMPORT_INTERNAL TO mesprod ;GRANT EXECUTE ON SYS.DBMS_DEFER_IMPORT_INTERNAL TO lblprod ;报错2:EXP-00008: ORACLE error 6510 encounteredORA-06510: PL/SQL: unhandled user-defined exceptionORA-06512: at "SYS.DBMS_EXPORT_EXTENSION", line 50解决方法:GRANT EXECUTE ON SYS.DBMS_EXPORT_EXTENSION TO mesprod;GRANT EXECUTE ON SYS.DBMS_EXPORT_EXTENSION TO lblprod ;PS:导出过程中的exp00091的错误,通常修改nls_lang环境变量即可解决,可以直接忽略这个错误。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

客户的数据库采用expdp命令导出的,这是Oracle10g以后采用的新的导出方式,比exp 执行效率上有所提高。

下面说明如何做导入导出:
1、环境变量设置(在Sqlplus中执行)
create or replace directory <dir_name> as ‘c:\tmpdir’;
注:c:\tmpdir也可以是另外的随意目录,用单引号括起来
2、导出ARADMIN库
expdp <username>/<password>@<SID> directory=<dir_name> dumpfile=xxxxxx.dat
logfile=xxxx.log schemas=ARADMIN;
3、如果需要备份(通常不需要)CMDB WebService则导出AtriumAdmin库
expdp <username>/<password>@<SID> directory=<dir_name> dumpfile=xxxxxx.dat
logfile=xxxx.log schemas=ARADMIN;
4、导出成功后,把dat和log文件都拷贝到目标数据库服务器上,记住两个文件的放
置路径
5、目标库导入前操作
create or replace directory <dir_name_1> as ‘c:\tmpdir’;
注:此处的c:\tmpdir替换成两个文件的存放路径
Sqlplus登录目标库(一定要用管理员账号);
sqlplus <username>/<password>@<SID> as sysdba;
核对连接的库名:
show parameter name; 查看连接的是哪个SID;
select username from dba_users order by created;查看所有表空间命令的最后两行应该有ARADMIN和ATRIUMADMIN表空间名;
删除目标库里面原来的表空间(删之前停AR服务):drop user ARADMIN cascade;
未停服务时报错
停服务后成功
创建新的用户并赋权限:
CREATE USER "ARADMIN" IDENTIFIED BY ARAdmin default tablespace ARSYSTEM
temporary tablespace TEMP quota unlimited on ARSYSTEM;
Grant alter session,create cluster,create database link,create sequence,create session, create synonym,create table,create view,create procedure,create trigger,query rewrite to aradmin;
6、导入库命令
Impdp <username>/<password>@<SID> directory=<dir_name_1> dumpfile=xxxx.dat logfile=xxxx.log schemas=ARADMIN。

相关文档
最新文档