oracle数据库rman异地恢复
首先讲下,为什么会遇到这个问题: 自己想做两组rac之间的data guard,由于datafile,controlfile,甚至是archivelog都是存放在asm上的,直接复制数据有点不现实,asm磁盘总归都是要用的,所以想从a库做rman全备份,然后把备份文件拷贝到b库上做rman恢复,初
首先讲下,为什么会遇到这个问题:
自己想做两组rac之间的data guard,由于datafile,controlfile,甚至是archivelog都是存放在asm上的,直接复制数据有点不现实,asm磁盘总归都是要用的,所以想从a库做rman全备份,然后把备份文件拷贝到b库上做rman恢复,初衷就是这么简单,结果却遇到了n多的折腾,无法实现,下面是我自己经过无数次测试得到的方法。
oracle版本:11.2.0.0
第一组RAC A ?PS:前面的hostname,冒号后面是instancename
rac1:orcl1
rac2:orcl2
rac3:orcl3
第二组RAC B
rac8:orcl1
rac9:orcl2
我已经创建好了两组rac,并且在上面分别创建了orcl数据库,我在A组rac的数据库里做了一些操作,我希望这些新建的表数据什么的在RAC B上也同样出现,我现在要做的就是在rac1上使用rman做数据库全备份然后把备份文件拷贝到rac8上,然后做rman恢复,使得rac8是rac1上oracle数据库的一个拷贝
1、rac1做rman全备份
登录到rac1上,使用rman全备份数据库,如下:
[oracle@rac1 ~]$ rman target /
RMAN> backup database format ‘/u01/app/oracle/backup/orcl01.dbf’;
备份成功了会告诉我:
数据文件备份文件为/u01/app/oracle/backup/orcl01.dbf’
controlfile,spfile备份文件为/u01/app/oracle/backup/c-1351646173-20130822-00
注意:我这边加了format参数备份成我指定的文件路径和名称,原因就是在异地恢复的时候,rman读取备份文件的目录和需要和备份时的目录一致,如果这边不使用format,备份到默认的asm磁盘上,则备份文件想要复制到异地的asm磁盘上有一定的难度,比如我遇到的问题就是默认备份到asm上的文件名称参数很长无法复制到异地的asm磁盘上
2、从rac1上拷贝备份文件到rac8
需要拷贝的文件如上:
数据文件备份文件为/u01/app/oracle/backup/orcl01.dbf’
controlfile,spfile备份文件为/u01/app/oracle/backup/c-1351646173-20130822-00
拷贝到rac8上之后仍然放在相同的路径下,设置具有相同的权限,一般是oracle:oinstall权限
3、rac8上做rman恢复
我们这边只需要恢复controlfile和datafile。
按理来说备份恢复应该使用一样的spfile,但是我们看到A组rac是3个节点,B组rac是2个节点,我这里还要说的是这两组rac server的配置是有差异的,spfile中定义了节点的信息,还定义了相关的初始化信息,A组RAC的这些信息在B组上并不适用的,所以我这里只恢复controlfile和datafile。
网上看到说异地rman恢复需要设置异地的dbid为本地的值,折腾了好久,发现这个是不需要的,dbid已经定义在controlfile当中,只要恢复了controlfile,dbid自然是相同的了。
恢复controlfile需要数据库置于nomount状态
[oracle@rac8 ~]$ uniread sqlplus ‘/ as sysdba’
SQL> shutdown immediate;
SQL> shutdown nomount;
[oracle@rac8 ~]$ uniread rman target /
RMAN> restore controlfile from ‘/u01/app/oracle/backup/c-1351646173-20130822-00′;
完了会告诉你恢复成功
恢复数据文件需要数据库置于mount状态
[oracle@rac8 ~]$ uniread sqlplus ‘/ as sysdba’
SQL> shutdown immediate;
SQL> shutdown mount;
注意:启动到mount的状态可能需要加参数resetlogs
[oracle@rac8 ~]$ uniread rman target /
RMAN> list backup of database;
可以看到备份文件信息
RMAN> restore database;
RMAN> recover database;
这样就恢复结束了
4、rac8上启动oracle到open状态
单独讲这个是有意义的,恢复之后,因为rac8上的数据字典等信息已经改变,所有他会报错ORA-39700: database must be opened with UPGRADE option
那我们就需要启动到升级模式了
SQL> startup?UPGRADE;
报错:ORA-39701: database must be mounted EXCLUSIVE for UPGRADE or DOWNGRADE
这个报错的解决方法是要禁掉集群参数
SQL> STARTUP NOMOUNT;
SQL> ALTER SYSTEM SET CLUSTER_DATABASE=FALSE scope=spfile ;
SQL> SHUTDOWN IMMEDIATE;
SQL> startup?UPGRADE;
这样就启动成功了,再有就是记得把集群参数开启。
?
原文地址:oracle数据库rman异地恢复, 感谢原作者分享。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Oracle 데이터베이스 로그의 보존 기간은 다음을 포함한 로그 유형 및 구성에 따라 다릅니다. 재실행 로그: "LOG_ARCHIVE_DEST" 매개변수로 구성된 최대 크기에 의해 결정됩니다. 보관된 리두 로그: "DB_RECOVERY_FILE_DEST_SIZE" 매개변수로 구성된 최대 크기에 따라 결정됩니다. 온라인 리두 로그: 보관되지 않고 데이터베이스를 다시 시작하면 손실되며 보존 기간은 인스턴스 실행 시간과 일치합니다. 감사 로그: "AUDIT_TRAIL" 매개변수로 구성되며 기본적으로 30일 동안 보관됩니다.

Oracle에 필요한 메모리 양은 데이터베이스 크기, 활동 수준 및 필요한 성능 수준(데이터 버퍼 저장, 인덱스 버퍼, SQL 문 실행 및 데이터 사전 캐시 관리에 필요)에 따라 다릅니다. 정확한 양은 데이터베이스 크기, 활동 수준 및 필요한 성능 수준에 따라 달라집니다. 모범 사례에는 적절한 SGA 크기 설정, SGA 구성 요소 크기 조정, AMM 사용 및 메모리 사용량 모니터링이 포함됩니다.

Oracle 데이터베이스 서버 하드웨어 구성 요구 사항: 프로세서: 기본 주파수가 2.5GHz 이상인 멀티 코어, 대규모 데이터베이스의 경우 32개 이상의 코어가 권장됩니다. 메모리: 소규모 데이터베이스의 경우 최소 8GB, 중간 크기의 경우 16~64GB, 대규모 데이터베이스 또는 과도한 작업 부하의 경우 최대 512GB 이상. 스토리지: SSD 또는 NVMe 디스크, 중복성 및 성능을 위한 RAID 어레이. 네트워크: 고속 네트워크(10GbE 이상), 전용 네트워크 카드, 지연 시간이 짧은 네트워크. 기타: 안정적인 전원 공급 장치, 이중 구성 요소, 호환 가능한 운영 체제 및 소프트웨어, 열 방출 및 냉각 시스템.

Oracle 데이터베이스에 필요한 메모리 양은 데이터베이스 크기, 작업 부하 유형 및 동시 사용자 수에 따라 다릅니다. 일반 권장 사항: 소형 데이터베이스: 16~32GB, 중형 데이터베이스: 32~64GB, 대형 데이터베이스: 64GB 이상. 고려해야 할 다른 요소로는 데이터베이스 버전, 메모리 최적화 옵션, 가상화 및 모범 사례(메모리 사용량 모니터링, 할당 조정)가 있습니다.

Oracle에서 하루에 한 번 실행되는 예약된 작업을 생성하려면 다음 세 단계를 수행해야 합니다. 작업을 생성합니다. 작업에 하위 작업을 추가하고 해당 일정 표현식을 "INTERVAL 1 DAY"로 설정합니다. 작업을 활성화합니다.

Apple의 최신 iOS18, iPadOS18 및 macOS Sequoia 시스템 릴리스에는 사진 애플리케이션에 중요한 기능이 추가되었습니다. 이 기능은 사용자가 다양한 이유로 손실되거나 손상된 사진과 비디오를 쉽게 복구할 수 있도록 설계되었습니다. 새로운 기능에는 사진 앱의 도구 섹션에 '복구됨'이라는 앨범이 도입되었습니다. 이 앨범은 사용자가 기기에 사진 라이브러리에 포함되지 않은 사진이나 비디오를 가지고 있을 때 자동으로 나타납니다. "복구된" 앨범의 출현은 데이터베이스 손상으로 인해 손실된 사진과 비디오, 사진 라이브러리에 올바르게 저장되지 않은 카메라 응용 프로그램 또는 사진 라이브러리를 관리하는 타사 응용 프로그램에 대한 솔루션을 제공합니다. 사용자는 몇 가지 간단한 단계만 거치면 됩니다.

MySQLi를 사용하여 PHP에서 데이터베이스 연결을 설정하는 방법: MySQLi 확장 포함(require_once) 연결 함수 생성(functionconnect_to_db) 연결 함수 호출($conn=connect_to_db()) 쿼리 실행($result=$conn->query()) 닫기 연결( $conn->close())

PHP에서 데이터베이스 연결 오류를 처리하려면 다음 단계를 사용할 수 있습니다. mysqli_connect_errno()를 사용하여 오류 코드를 얻습니다. 오류 메시지를 얻으려면 mysqli_connect_error()를 사용하십시오. 이러한 오류 메시지를 캡처하고 기록하면 데이터베이스 연결 문제를 쉽게 식별하고 해결할 수 있어 애플리케이션이 원활하게 실행될 수 있습니다.
