单例19c RMAN数据迁移方案

news2024/11/24 17:26:24
一、环境说明

源库

目标库

IP

192.168.37.200

192.168.37.202

系统版本

RedHat 7.9

RedHat 7.9

数据库版本

19.3.0.0.0

19.3.0.0.0

SID

beg

beg

hostname

beg

rman

数据量

1353M

说明:源库已经创建数据库实例,并且存在用户kk和他创建的表空间和表,目标库只有数据库软件。

二、备份
2.1.日志清理(源端)
cd $ORACLE_BASE/diag/rdbms/beg/beg/trace
find ./ -name "*.trc" -ctime +15|xargs rm -f
find ./ -name "*.trm" -ctime +15|xargs rm -f
2.2.监听日志文件清理(源端)
cd /u01/app/oracle/diag/tnslsnr/beg/listener/alert
find ./ -name "*.xml" -ctime +15 |xargs rm -f

2.3.审计日志文件清理(源端)
cd /u01/app/oracle/admin/beg/adump
find ./ -name "*.aud" -ctime +15 |xargs rm -f
2.4.数据库目录备份(源端)
su – oracle
cd $ORACLE_HOME
cd ..
tar -cvzf db_home.tar.gz db/	#压缩至db同一目录

2.5.创建备份目录
su – oracle
mkdir –p /u01/app/store
--此目录是为了存储备份文件

2.6.创建rman用户
--创建表空间
CREATE TABLESPACE rman DATAFILE '/u01/app/oracle/oradata/BEG/rman.rdf' SIZE 125m AUTOEXTEND ON NEXT 50m MAXSIZE 1g;

--创建用户
create user rman identified by rman;
alter user rman default tablespace rman quota unlimited on rman;
--授权
grant recovery_catalog_owner to rman identified by rman;

2.7.备份原数据库
rman catalog rman/rman
--创建catalo
create catalog;
exit

2.8.添加监听
cd $ORACLE_HOME/dbs
vi tnsnames.ora
##添加以下内容
catalog =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = beg)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = catalog)
    )
)
2.9.注册数据库
rman target / catalog rman/rman@beg
register database;

2.10.开始备份
run {
  configure controlfile autobackup on;
  configure controlfile autobackup format for device type disk to '/u01/app/store/%F';
  allocate channel d1 type disk;
  allocate channel d2 type disk;
  backup incremental level=0 database format '/u01/app/store/d_%T_%s.bak';
  release channel d1;
  release channel d2;
  }

源数据库备份完毕,会在备份集目录中看到备份集:

----记录----
RMAN> run {
  configure controlfile autobackup on;
  configure controlfile autobackup format for device type disk to '/u01/app/store/%F';
  allocate channel d1 type disk;
  allocate channel d2 type disk;
  backup incremental level=0 database format '/u01/app/store/d_%T_%s.bak';
  release channel d1;
  release channel d2;
}

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored
starting full resync of recovery catalog
full resync complete

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/app/store/ %F';
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/app/store/%F';
new RMAN configuration parameters are successfully stored
starting full resync of recovery catalog
full resync complete

allocated channel: d1
channel d1: SID=17 device type=DISK

allocated channel: d2
channel d2: SID=394 device type=DISK

Starting backup at 08-APR-24
channel d1: starting incremental level 0 datafile backup set
channel d1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/BEG/system01.dbf
input datafile file number=00007 name=/u01/app/oracle/oradata/BEG/users01.dbf
input datafile file number=00005 name=/u01/app/oracle/oradata/BEG/beg_data01.dbf
channel d1: starting piece 1 at 08-APR-24
channel d2: starting incremental level 0 datafile backup set
channel d2: specifying datafile(s) in backup set
input datafile file number=00003 name=/u01/app/oracle/oradata/BEG/sysaux01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/BEG/undotbs01.dbf
input datafile file number=00002 name=/u01/app/oracle/oradata/BEG/rman.rdf
channel d2: starting piece 1 at 08-APR-24
channel d2: finished piece 1 at 08-APR-24
piece handle=/u01/app/store/d_20240408_6.bak tag=TAG20240408T170731 comment=NONE
channel d2: backup set complete, elapsed time: 00:00:07
channel d1: finished piece 1 at 08-APR-24
piece handle=/u01/app/store/d_20240408_5.bak tag=TAG20240408T170731 comment=NONE
channel d1: backup set complete, elapsed time: 00:00:15
Finished backup at 08-APR-24

Starting Control File and SPFILE Autobackup at 08-APR-24
piece handle=/u01/app/store/c-2243024325-20240408-00 comment=NONE
Finished Control File and SPFILE Autobackup at 08-APR-24

released channel: d1

released channel: d2
三、在目标数据库还原数据库
3.1.传输备份集到目标端
su – oracle
cd /u01/app/store
scp d_20240408_5.bak d_20240408_6.bak c-2243024325-20240408-00 oracle@rman:/u01/app/store

3.2.传输配置到目标端
scp initbeg.ora orapwbeg oracle@rman:/u01/app/oracle/product/19.3.0/db/dbs

---在目标端编辑initbeg.ora配置文件
cd $ORACLE_HOME/dbs
vi initbeg.ora
##在文件末尾添加
_allow_resetlogs_corruption=true
3.3.创建adump目录
mkdir -p /u01/app/oracle/admin/beg/adump
3.4.以pfile启动目标数据库,启动rman
sas 
startup pfile='/u01/app/oracle/product/19.3.0/db/dbs/initbeg.ora' nomount;
exit;

---查询源数据库的dnid
select dbid from v$database;

3.5.启动rman
rman
connect target / ;
set dbid=2243024325;
3.6.还原
-----还原控制文件
restore controlfile from '/u01/app/store/c-2243024325-20240408-00’;

-----还原初始配置文件
restore spfile from '/u01/app/store/c-2243024325-20240408-00’;

-----还原数据库
alter database mount;

restore database;

recover database;

Alter database open resetlogs;

四、验证
4.1.登录
#因为在源库中kk用户已经创建了,我们使用kk用户登录
sas
conn kk/oracle
4.2.查询
select count(*) from departments;
select count(*) from employees;

五、问题及解决
5.1.命令错误
--问题描述
[oracle@beg:/u01/app/oracle/oradata/BEG]$ rman target / catalog rman
………
RMAN-00552: syntax error in command line arguments
RMAN-01009: syntax error: found "rman": expecting one of: "double-quoted-string, identifier, single-quoted-string, "
RMAN-01007: at line 2 column 1 file: command line arguments
--解决办法
将命令修改成如下
rman target / catalog rman/rman@beg

--错误原因分析:
不熟悉rman命令导致的,需要对rman深入学习
5.2.非归档下无法进行backup操作
--问题描述
RMAN-03002: failure of backup command at 04/08/2024 16:26:56 
RMAN-06149: cannot BACKUP DATABASE in NOARCHIVELOG mode
--问题分析:
数据库处于NOARCHIVELOG模式下,因此无法执行BACKUP DATABASE命令
--解决办法
切换到ARCHIVELOG模式
ALTER DATABASE ARCHIVELOG;
5.3.找不到相关目录
--问题描述:
在进行数据库备份的时候,提到了没有这个文件夹:  
--解决思路: 
起初怀疑是权限问提,在将该目录下以及他的目录之前的权限都赋予了oracle用户还是没有解决,最终排除下来是因为在store /%中间的位置加了一个空格,删除之后问题解。
run {
  configure controlfile autobackup on;
  configure controlfile autobackup format for device type disk to '/u01/app/store/%F';
  allocate channel d1 type disk;
  allocate channel d2 type disk;
  backup incremental level=0 database format '/u01/app/store/d_%T_%s.bak';
  release channel d1;
  release channel d2;
  }
5.4.缺少相关目录
--问题描述
在通过pfile文件启动数据库到nomount状态时,报错没找相关目录或文件夹

--解决思路
找出缺失文件或目录,进行创建
--问题解决
报错内容为无法创建审计跟踪文件,检查从源端传输过来的配置文件:

发现这个文件没有创建,创建即可:
mkdir -p /u01/app/oracle/admin/beg/adump
之后启动正常,问题解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1588868.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Rancher1.0版本安装使用

Rancher1.0版本安装使用 准备环境 rancher是一个容器管理和服务编排工具。 如下链接,讲的可以,大家参考下,我已经测试过了。 http://tonybai.com/2016/04/14/an-introduction-about-rancher/ 操作系统Centos7.2 用户为root。最好使用Cent…

ELK日志分析系统之Zookeeper

一、Zookeeper简介 ZooKeeper是一种为分布式应用所设计的高可用、高性能且一致的开源协调服务,它提供了一项基本服务:分布式锁服务。分布式应用可以基于它实现更高级的服务,实现诸如同步服务、配置维护和集群管理或者命名的服务。 Zookeepe…

SQL注入---HTTP报头注入

文章目录 目录 文章目录 一.uagent注入 二.refeer注入 三.Cookie注入 前文中提到万能密钥的工作原理,然而万能密钥仅在源代码中没有代码审计,此时才被称之为万能密钥,而代码中有代码审计时需要分以下几种情况讨论 一.uagent注入 先看代码&a…

【攻防世界】题目名称-文件包含

看到 include(),想到文件包含,用php伪协议。 知识点 看到 include(),require(),include_once(),require_once() ,想到文件包含,用php伪协议 ?filenamephp://filter/readconvert.base64-encode/…

TinyEMU源码分析之中断处理

TinyEMU源码分析之中断处理 1 触发中断2 查询中断2.1 查询中断使能与pending状态(mie和mip)2.2 查询中断总开关与委托(mstatus和mideleg)2.2.1 M模式2.2.2 S模式2.2.3 U模式 3 处理中断3.1 获取中断编号3.2 检查委托3.3 进入中断3…

【图像处理】-小议YUV色彩空间-YUV和RGB格式的来由,相互关系以及转换方式,并对编程实现的YUV转为RGB程序进行介绍

小议YUV色彩空间 摘要: 在视频图像处理等相关相关领域,YUV是一个经常出现的格式。本文主要以图解的资料形式详细描述YUV和RGB格式的来由,相互关系以及转换方式,并对编程实现的YUV转为RGB程序进行介绍。 1 引言 自然界的颜色千变万化&#xff…

AI算力报告:算力大时代,AI算力产业链全景梳理

今天分享的是AI算力专题系列深度研究报告:《算力大时代,AI算力产业链全景梳理》。 (报告出品方:中信建投证券) 报告共计:98页 核心观点 生成式 AI取得突破,我们对生成式 A 带来的算力需求做…

AI预测体彩排3第1弹【2024年4月12日预测--第1套算法开始计算第1次测试】

前面经过多个模型几十次对福彩3D的预测,积累了一定的经验,摸索了一些稳定的规律,有很多彩友让我也出一下排列3的预测结果,我认为目前时机已成熟,且由于福彩3D和体彩排列3的玩法完全一样,我认为3D的规律和模…

6.基础乐理-升降号、黑键的音名

首先需要先了解音乐中的两个符号,升号和降号,升号的符号像#,降号的符号像b,如下图: 升号表示升高到相邻的音,降号表示降低到相邻的音,现在首先要知道音是有高低的,在钢琴键盘上从左到…

ZGC的介绍

背景 在jdk17中已经将ZGC从实验性产品升级到正式产品功能,达到亚毫秒级停顿,毫不留情地将parallel和G1拉开了数量级的差别,无论是平均停顿还是最大停顿时间都能毫不费劲地控制在10ms内。 《深入理解Java虚拟机》在书中这样定义:Z…

String类(2)

❤️❤️前言~🥳🎉🎉🎉 hellohello~,大家好💕💕,这里是E绵绵呀✋✋ ,如果觉得这篇文章还不错的话还请点赞❤️❤️收藏💞 💞 关注💥&…

【日常记录】【JS】使用Number.prototype.toLocaleString 对 数字做 格式化

文章目录 1、引言2、语法参数3、常见案例4、参考链接 1、引言 在目前的项目中,经常需要给数字做格式化处理,特别是财务方面,比如分割成千分位,保留小数,增加符号等 ,这些都需要我们手写一些函数来处理。 但…

Vue.js组件精讲 第2章 基础:Vue.js组件的三个API:prop、event、slot

如果您已经对 Vue.js 组件的基础用法了如指掌,可以跳过本小节,不过当做复习稍读一下也无妨。 组件的构成 一个再复杂的组件,都是由三部分组成的:prop、event、slot,它们构成了 Vue.js 组件的 API。如果你开发的是一个…

TechTool Pro for Mac v19.0.3中文激活版 硬件监测和系统维护工具

TechTool Pro for Mac是一款专为Mac用户设计的强大系统维护和故障排除工具。它凭借全面的功能、高效的性能以及友好的操作界面,赢得了广大用户的信赖和好评。 软件下载:TechTool Pro for Mac v19.0.3中文激活版 作为一款专业的磁盘和系统维护工具&#x…

大数据入门之如何利用Phoenix访问Hbase

在大数据的世界里,HBase和Phoenix可谓是一对黄金搭档。HBase以其高效的列式存储和强大的数据扩展能力,成为大数据存储领域的佼佼者;而Phoenix则以其SQL化的操作方式,简化了对HBase的访问过程。今天,就让我们一起看看如…

哲学家带你实现单链表

最近本哲♂学家学习了链表这一新的数据结构,接下来由我带领大家实现链表: 一 、头文件 注:本写法是无头的单链表,所以传参为二级指针。 我们事先写好所要完成的函数,在 .c文件中进一步去完成。 typedef int SLTData…

19(20)-1(3)-CSS3 平面 2D 变换+CSS3 过渡

个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 ✍一、CSS3 平面 2D 变换💎1 坐标轴💎2 transform 语法…

云原生数据库海山(He3DB)PostgreSQL版核心设计理念

本期深入解析云原生数据库海山PostgreSQL版(以下简称“He3DB”)的设计理念,探讨在设计云原生数据库过程中遇到的工程挑战,并展示He3DB如何有效地解决这些问题。 He3DB是移动云受到 Amazon Aurora 论文启发而独立自主设计的云原生数…

【学习】Spring IoCDI

🎥 个人主页:Dikz12📕格言:吾愚多不敏,而愿加学欢迎大家👍点赞✍评论⭐收藏 目录 Spring 是什么? 什么是 IoC容器? 传统开发模式 loC开发模式 IoC的优势 IoC 的使用 Bean的…

策略为王股票软件源代码-----如何修改为自己软件04

上面是如何打开-------类---------函数 1. 数据结构 1) 股票数据结构的定义在头文件Src\StkLib\Include\Stock.h中,主要的几个结构定义为: KDATA K线数据结构 DRDATA 除权数据结构 REPORT 交易所在交易时间内不断发送的报价信息 MINUTE 分钟成交…