【Oracle】RAC的多实例数据迁移至单机的多实例。
思路:一般的思路可以通过RMAN进行数据的恢复。由于数据库可以停机,因此,这次试用数据泵(expdp,impdp)进行数据
的导入导出。
1.源数据库导出
通过编写导出shell脚本导出数据,如下:
expdp_mangedb_full.sh的脚本:
[oracle@arprac02 scripts]$ cat expdp_mangedb_full.sh
#!/bin/bash
source ~/.bash_profile
export ORACLE_SID=managedb2
export DATE=$(date +%Y%m%d%H)
expdp system/oracle directory=expbk logfile=managedb76_full_$DATE.log dumpfile=managedb76_full_$DATE.dmp full=y
expdp_servdb_full.sh的脚本:
[oracle@arprac02 scripts]$ cat expdp_servdb_full.sh
#!/bin/bash
source ~/.bash_profile
export ORACLE_SID=servdb2
export DATE=$(date +%Y%m%d%H)
expdp system/oracle directory=expbk logfile=servdb76_full_$DATE.log dumpfile=servdb76_full_$DATE.dmp full=y
以上,导出多实例的全库数据。
2.数据导入
确定导入指定的数据库实例,这里实践的是servdb数据库实例.全库的导入:它会导入表空间的建表过程,建立用户的过程,建立角色,建立同义词,建立表,视图,存储过程,dblink,job等等所有该有的东西。所以,如果导入过程中有报错,可以分析问题,逐一解决。
赋权建立导入导出备份目录
[oracle@db u01]$ mkdir dmpbackup
数据库中,赋权目录
export ORACLE_SID=servdb
SQL> select INSTANCE_NAME from v$instance;
SQL> create directory expbk as '/u01/dmpbackup';
SQL> grant read,write on directory expbk to system;
导入的dmp文件权限放开
[root@db ~]# chmod -R 777 /u01/dmpbackup/servdb76_full_2020031115.dmp
导入数据
export ORACLE_SID=servdb
impdp system/oracle directory=expbk dumpfile=servdb76_full_2020031322.dmp logfile=servdb76_full_20200313.log EXCLUDE=SCHEMA:\"IN \(\'SYSMAN\', \'SYSTEM\'\)\" EXCLUDE=STATISTICS
这里会有一个报错,log如下:
Failing sql is:
CREATE UNDO TABLESPACE "UNDOTBS2" DATAFILE '+DATA/servdb/datafile/undotbs2.280.826877779' SIZE 209715200 AUTOEXTEND ON NEXT 5242880 MAXSIZE 32767M BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE
ORA-31684: Object type TABLESPACE:"USERS" already exists
ORA-39083: Object type TABLESPACE failed to create with error:
ORA-01276: Cannot add file +DATA/servdb/datafile/no1task.329.827069307. File has an Oracle Managed Files file name.
Failing sql is:
CREATE TABLESPACE "NO1TASK" DATAFILE '+DATA/servdb/datafile/no1task.329.827069307' SIZE 4194304000 AUTOEXTEND ON NEXT 268435456 MAXSIZE 32767M,'+DATA/servdb/datafile/no1task.6801.910947551' SIZE 32212254720 AUTOEXTEND ON NEXT 536870912
MAXSIZE 32767M LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL
ORA-39083: Object type TABLESPACE failed to create with error:
ORA-01276: Cannot add file +DATA/servdb/datafile/mobileapp.397.827404615. File has an Oracle Managed Files file name.
Failing sql is:
CREATE TABLESPACE "MOBILEAPP" DATAFILE '+DATA/servdb/datafile/mobileapp.397.827404615' SIZE 1048576000 AUTOEXTEND ON NEXT 134217728 MAXSIZE 32767M LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPAC
E MANAGEMENT AUTO
ORA-39083: Object type TABLESPACE failed to create with error:
ORA-01276: Cannot add file +DATA/servdb/datafile/otf_platform.3693.842997461. File has an Oracle Managed Files file name.
Failing sql is:
CREATE TABLESPACE "OTF_PLATFORM" DATAFILE '+DATA/servdb/datafile/otf_platform.3693.842997461' SIZE 2097152000 AUTOEXTEND ON NEXT 134217728 MAXSIZE 32767M LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGME
NT SPACE MANAGEMENT AUTO
ORA-39083: Object type TABLESPACE failed to create with error:
ORA-01276: Cannot add file +DATA/servdb/datafile/ds_model.32447.845631431. File has an Oracle Managed Files file name.
Failing sql is:
CREATE TABLESPACE "DS_MODEL" DATAFILE '+DATA/servdb/datafile/ds_model.32447.845631431' SIZE 2097152000 AUTOEXTEND ON NEXT 134217728 MAXSIZE 32767M LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPAC
E MANAGEMENT AUTO
ORA-39083: Object type TABLESPACE failed to create with error:
ORA-01276: Cannot add file +DATA/servdb/datafile/otfys_platform.385.878320405. File has an Oracle Managed Files file name.
Failing sql is:
CREATE TABLESPACE "OTFYS_PLATFORM" DATAFILE '+DATA/servdb/datafile/otfys_platform.385.878320405' SIZE 2097152000 AUTOEXTEND ON NEXT 67108864 MAXSIZE 32767M LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEG
MENT SPACE MANAGEMENT AUTO
ORA-39083: Object type TABLESPACE failed to create with error:
ORA-01276: Cannot add file +DATA/servdb/datafile/otfys_platform135.61091.1032087535. File has an Oracle Managed Files file name.
Failing sql is:
CREATE TABLESPACE "OTFYS_PLATFORM135" DATAFILE '+DATA/servdb/datafile/otfys_platform135.61091.1032087535' SIZE 67108864 AUTOEXTEND ON NEXT 33554432 MAXSIZE 10240M LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOC
ATE SEGMENT SPACE MANAGEMENT AUTO
解决思路:手动建立表空间,[这里有一个细节,最后名字要一样,表空间必须保证足够大,要不然还会报错]
CREATE UNDO TABLESPACE "UNDOTBS2" DATAFILE '/u01/app/oradata/servdb/undotbs2.280.826877779' SIZE 209715200 AUTOEXTEND ON NEXT 5242880 MAXSIZE 32767M;
CREATE TABLESPACE "NO1TASK" DATAFILE '/u01/app/oradata/servdb/no1task.329.827069307' SIZE 2048M AUTOEXTEND ON NEXT 268435456 MAXSIZE 32767M,'/u01/app/oradata/servdb/no1task.6801.910947551' SIZE 2048M AUTOEXTEND ON NEXT 536870912 MAXSIZE 32767M;
CREATE TABLESPACE "MOBILEAPP" DATAFILE '/u01/app/oradata/servdb/mobileapp.397.827404615' SIZE 1024M AUTOEXTEND ON NEXT 128M MAXSIZE 32767M;
CREATE TABLESPACE "OTF_PLATFORM" DATAFILE '/u01/app/oradata/servdb/otf_platform.3693.842997461' SIZE 2048M AUTOEXTEND ON NEXT 128M MAXSIZE 32767M;
CREATE TABLESPACE "DS_MODEL" DATAFILE '/u01/app/oradata/servdb/ds_model.32447.845631431' SIZE 2097152000 AUTOEXTEND ON NEXT 134217728 MAXSIZE 32767M;
CREATE TABLESPACE "OTFYS_PLATFORM" DATAFILE '/u01/app/oradata/servdb/otfys_platform.385.878320405' SIZE 2097152000 AUTOEXTEND ON NEXT 67108864 MAXSIZE 32767M;
CREATE TABLESPACE "OTFYS_PLATFORM135" DATAFILE '/u01/app/oradata/servdb/otfys_platform135.61091.1032087535' SIZE 67108864 AUTOEXTEND ON NEXT 33554432 MAXSIZE 10240M;
这里,不记叙重复性的事情。后面由于三个示例,需要修改一下归档日志的位置。
三个数据库实例,
servdb实例的位置为【/u01/app/arch/servdb】
managedb实例的位置为【/u01/app/arch/managedb】
irc3db实例的位置为【/u01/app/arch/irc3db】
mkdir -p /u01/app/arch/servdb
mkdir -p /u01/app/arch/managedb
mkdir -p /u01/app/arch/irc3db
export ORACLE_SID=servdb
$ sqlplus "/as sysdba"
SQL>alter system set log_archive_dest_1='location=/u01/app/arch/servdb' scope =both;
export ORACLE_SID=managedb
$ sqlplus "/as sysdba"
SQL>alter system set log_archive_dest_1='location=/u01/app/arch/managedb' scope =both;
重新开启归档模式
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
【Oracle】RAC的多实例数据迁移至单机的多实例。的更多相关文章
- 将Oracle 12c的某用户数据迁移至OracleXE的用户
前言:OracleXE全称为oracle database 11g express edition .Oracle Database 11g Express Edition是 Oracle 数据库的免 ...
- 生产环境下,oracle不同用户间的数据迁移。第一部分
:任务名称:生产环境下schema ELON数据迁移至schema TIAN ######################################## 测试一:测试参数 数据泵数据导出:exp ...
- 生产环境下,oracle不同用户间的数据迁移。第二部分
任务名称:生产环境下schema ELON数据迁移至schema TIAN######################################## 测试二:测试参数remap_tablespa ...
- 生产环境下,oracle不同用户间的数据迁移。第三部分
任务名称:生产环境下schema ELON数据迁移至schema TIAN########################################前期准备:1:确认ELON用户下的对象状态se ...
- KingbaseES V8R6集群维护案例之--单实例数据迁移到集群案例
案例说明: 生产环境是单实例,测试环境是集群,现需要将生产环境的数据迁移到集群中运行,本文档详细介绍了从单实例环境恢复数据到集群环境的操作步骤,可以作为生产环境迁移数据的参考. 适用版本: Kingb ...
- Redis单实例数据迁移到集群
环境说明 单机redis redis集群 192.168.41.101:7000 master 192.168.41.101:7001 master 192.168.41.102:7000 maste ...
- 在Oracle中使用sqlload做数据迁移
前提:检查sqlload是否可用,输入sqlldr,提示有版本即可 1.创建测试表(已有则跳过)create table testTable(user varchar2(255),name var ...
- oracle rac理解和用途扩展
Oracle RAC的优势在于利用多个节点(数据库实例)组成一个数据库,这样在保证了数据库高可用性的情况下更充分的利用了多个主机的性能,而且可以通过增加节点进行性能的扩展.实现Oracle RAC需要 ...
- Oracle RAC(Real Application Clusters)
Oracle RAC 运行于集群之上,为 Oracle 数据库提供了最高级别的可用性.可伸缩性和低成本计算能力.如果集群内的一个节点发生故障,Oracle 将可以继续在其余的节点上运行.Oracle ...
随机推荐
- es 查询分词字段为空的数据
{ "query": { "bool" : { "filter" : { "script" : { "scri ...
- Zookeeper开源客户端框架Curator的使用
CuratorFramework Curator框架提供了一套高级的API, 简化了ZooKeeper的操作. 话不多说,看代码 package com.donews.data.util import ...
- leetcode第23题:合并K个排序链表
首先我想到的是采用一般递归法,将K个链表合并化为(k-1)两个链表合并 class Solution: def mergeKLists(self, lists: List[ListNode]) -&g ...
- 领域驱动(DDD)之我见,基于Golang实现
分享一点不成熟的理解,还请本着交流进步的大原则喷之.从去年开始接触和套用DDD以来,已经有1年多时间了.也先后在2个生产项目中主导应用. 一.一些概念 DDD经典分层: 分层架构的一个重要原则是:每层 ...
- Ubuntu12.10下安装Python3
设置Python3.2为默认版本 ubuntu12.10下默认安装了Python2.7和Python3.2.3,并且设置了Python2.7为默认的版本,因此如果讨厌麻烦的话,可以直接将Python3 ...
- 吴裕雄--天生自然HTML学习笔记:HTML 布局
网页布局对改善网站的外观非常重要. 请慎重设计您的网页布局. <!DOCTYPE html> <html> <head> <meta charset=&qu ...
- 吴裕雄--天生自然 R语言开发学习:基本图形(续一)
#---------------------------------------------------------------# # R in Action (2nd ed): Chapter 6 ...
- SpringBoot + JPA + mariadb
SpringBoot + JPA + MariaDB 源码:https://github.com/ldl326308/LiveGreen-SpringBoot.git JPA持久层方法名命名规则:
- 实现 add()(1,2)(3,4)(7,8,9)()
function add(){ var sum=0; function inner(pre,cur){ return pre+cur; } sum=Array.prototype.slice.call ...
- react-router简单使用方法
使用 传值 非Link跳转 路由返回 v2,v3里的跳转,返回和传值 问题 react-router版本 v4.x 跟着官网 https://reacttraining.com/react-route ...