本帖最后由 dawn009 于 2014-2-10 18:15 编辑
转载于:http://blog.csdn.net/tianlesoftware/article/details/5912602
将Oracle 单实例迁移到 RAC 实例上有两种方法:
1. 使用RMAN 复制
2. 使用逻辑导出导入(exp/imp) 或者 数据泵(expdp/impdp)
这篇演示用数据泵(expdp/impdp)将单实例迁移到RAC 环境。 导出导入schema方式来进行。逻辑导出导入相对数据泵而言,更简单一点。
这里假设RAC 环境已经搭建好了。 如果没有搭建好,可以参考我的Blog:
Redhat 5.4 + ASM + RAW+ Oracle 10g RAC 安装文档
导出导入参考:
Oracle 10g EXPDP和IMPDP使用说明
ORACLE 数据库逻辑备份 简单 EXP/IMP
测试过程如下:
1. 现在本地库上创建用户Dave, 与值对应的表空间。
2. 用Dave 登陆,创建相关的表。
3. 将Dave用户的表空间导出
4. 将dump文件导入到RAC 实例
一. 在本地库上创建表空间,用户
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
D:/APP/ADMINISTRATOR/ORADATA/ORCL/USERS01.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/UNDOTBS01.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/SYSAUX01.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/SYSTEM01.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/DAVE0.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/DBA1.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/CATALOG1.DBF
D:/APP/ADMINISTRATOR/ORADATA/ORCL/CATALOG_TS1.DBF
已选择8行。
SQL> create tablespace tianlesoftware datafile
'D:/APP/ADMINISTRATOR/ORADATA/ORCL/tianlesoftware.dbf' size 50m;
表空间已创建。
SQL> create user dave identified by dave default tablespace tianlesoftware temporary tablespace temp;
用户已创建。
SQL> grant dba to dave;
授权成功。
SQL> grant connect to dave;
授权成功。
SQL> grant resource to dave;
授权成功。
SQL>
二. 用dave登陆,创建相关表
SQL> create table userinfo(name varchar2(10),hometown varchar2(20));
表已创建。
SQL> insert into userinfo values('dave','安徽省安庆市怀宁县');
已创建 1 行。
SQL> commit;
提交完成。
SQL> insert into userinfo values('Tianle','安徽省安庆市怀宁县');
已创建 1 行。
SQL> commit;
提交完成。
SQL> select * from userinfo;
NAME HOMETOWN
---------- --------------------
dave 安徽省安庆市怀宁县
Tianle 安徽省安庆市怀宁县
SQL>
三. 用数据泵导出Dave 用户的表空间
3.1 创建directory 并赋权
SQL> conn / as sysdba;
已连接。
SQL> create directory backup as 'e:/tmp';
目录已创建。
SQL> grant read,write on directory backup to dave;
授权成功。
SQL> select * from dba_directories;
OWNER DIRECTORY_NAME DIRECTORY_PATH
------------------------------ ------------------------------ ------------------
SYS BACKUP e:/tmp
3.2 导出Dave schema - - - SCHEMA 与用户对应
[oracle@localhost ~]$ expdp dave/dave DIRECTORY=backup DUMPFILE=tianlesoftware.dmp SCHEMAS=Dave logfile=exp.log;
Export: Release 10.2.0.1.0 - Production on Tuesday, 28 September, 2010 15:12:36
Copyright (c) 2003, 2005, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
Starting "DAVE"."SYS_EXPORT_SCHEMA_01": dave/******** DIRECTORY=backup DUMPFILE=tianlesoftware.dmp SCHEMAS=Dave logfile=exp.log
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 64 KB
Processing object type SCHEMA_EXPORT/USER
Processing object type SCHEMA_EXPORT/SYSTEM_GRANT
Processing object type SCHEMA_EXPORT/ROLE_GRANT
Processing object type SCHEMA_EXPORT/DEFAULT_ROLE
Processing o