Oracle—RMAN备份
RMAN备份中表空间不需要处于backup模式下,它备份数据文件,归档日志文件,控制文件,spfile和备份集片,但不备份联机重做日志文
一.RMAN备份相关概念
1.RMAN备份中表空间不需要处于backup模式下,它备份数据文件,归档日志文件,控制文件,spfile和备份集片,但不备份联机重做日志文件,临时文件和口令文件。
2.备份集由备份片组成,可以包含一个或者多个备份片。备份片可以在操作系统中直接看到,其大小和操作系统有关,32位的操作系统最大文件是4G。
3.数据文件备份集支持完整和增量备份,即只备份使用过的块,而归档日志文件备份集不支持这个。
4.在RMAN下的常用查看命令,show all查看备份的默认参数,report schema查看数据表空间和数据文件的信息,list back查看已经备份文件的信息。
在show all中有个默认控制文件备份问题,控制文件备份默认是不备份的,
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
如果备份系统表空间的文件,那么无论是off还是on状态,控制文件自动备份。
5.常用参数,maxpiecesize规定备份片的大小,maxsetsize备份集的大小,filesperset表示一个备份集中所含有的输入文件个数,%U=%u_%p_%c生成唯一的名称。
6.在RMAN备份中,可以把备份文件分成两块,一块是数据文件备份集,另一块是归档日志文件,控制文件和spfile在一起的压缩打包文件。
推荐阅读:
Oracle基础教程之通过RMAN复制数据库
RMAN备份策略制定参考内容
RMAN备份学习笔记
Oracle数据库备份加密 RMAN加密
二.RMAN备份的方式
1.非归档模式下,必须进行一致性的备份,执行RMAN一致性备份要求数据库处于加载模式下,并且干净的关闭,备份可以是完整的或者增量的。
2.在归档模式下,可以一致性备份也可以非一致性备份,在非一致性备份中必须备份归档日志文件,备份可以是全部的,局部的,完整的或者增量的。
备份可以分为全部的,局部的,完整的或者增量的备份,,只有RMAN可以实现增量备份。
三.RMAN备份各种文件
(一)备份数据文件
Report schema可以看到各种表空间和数据文件等的信息。
RMAN> report schema;
Report of database schema for database with db_unique_name WILSON
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1 760 SYSTEM *** /u01/oradata/wilson/system01.dbf
2 580 SYSAUX *** /u01/oradata/wilson/sysaux01.dbf
3 135 UNDOTBS1 *** /u01/oradata/wilson/undotbs01.dbf
4 28 USERS *** /u01/oradata/wilson/users01.dbf
5 100 EXAMPLE *** /u01/oradata/wilson/example01.dbf
6 20 PAUL *** /u01/oradata/wilson/paul01.dbf
7 20 SUN *** /u01/oradata/wilson/sun01.dbf
8 2 SMALLUNDO *** /u01/oradata/wilson/smallundo1.dbf
9 100 ASSM *** /u01/oradata/wilson/assm_1.dbf
10 100 MSSM *** /u01/oradata/wilson/mssm_1dbf
11 10 PAUL *** /u01/oradata/wilson/paul02.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1 29 TEMP 32767 /u01/oradata/wilson/temp01.dbf
2 100 MYTEMP 100 /u01/oradata/wilson/mytemp01.dbf
或者在sql*plus下也可以看到
SQL> select file#,name from v$datafile;
FILE# NAME
---------- -----------------------------------
1 /u01/oradata/wilson/system01.dbf
2 /u01/oradata/wilson/sysaux01.dbf
3 /u01/oradata/wilson/undotbs01.dbf
4 /u01/oradata/wilson/users01.dbf
5 /u01/oradata/wilson/example01.dbf
6 /u01/oradata/wilson/paul01.dbf
7 /u01/oradata/wilson/sun01.dbf
8 /u01/oradata/wilson/smallundo1.dbf
9 /u01/oradata/wilson/assm_1.dbf
10 /u01/oradata/wilson/mssm_1dbf
11 /u01/oradata/wilson/paul02.dbf
11 rows selected.
使用下面的命令都可以备份成功,
RMAN> backup datafile 4 format='/u01/backup/md_%U';
或者
RMAN> backup datafile '/u01/oradata/wilson/users01.dbf' format='/u01/backup/md_%U';
Starting backup at 23-AUG-13
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00004 name=/u01/oradata/wilson/users01.dbf
channel ORA_DISK_1: starting piece 1 at 23-AUG-13
channel ORA_DISK_1: finished piece 1 at 23-AUG-13
piece handle=/u01/backup/md_1hoi1t5t_1_1 tag=TAG20130823T202948 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 23-AUG-13
(二)备份表空间
和备份数据文件一样,report schema来查看表空间的信息。只有命令上有点区别,如下
RMAN> backup tablespace sun format='/u01/backup/ts_%U';
Starting backup at 23-AUG-13
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00007 name=/u01/oradata/wilson/sun01.dbf
channel ORA_DISK_1: starting piece 1 at 23-AUG-13
channel ORA_DISK_1: finished piece 1 at 23-AUG-13
piece handle=/u01/backup/ts_1ioi1tdv_1_1 tag=TAG20130823T203407 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 23-AUG-13
(三)备份控制文件
1.开启自动备份控制文件
RMAN> show all;
RMAN configuration parameters for database with db_unique_name WILSON are:
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/ctl_%F';
。。。。。。
可以看到默认情况下是off的,修改为on,
RMAN> configure controlfile autobackup on;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored
再查看确认一下,
RMAN> show all;
RMAN configuration parameters for database with db_unique_name WILSON are:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/ctl_%F';
对于CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/ctl_%F';命令可以控制文件备份到所需要的地址上。
这个自动备份控制文件,会把spfile也一起备份的。
2.直接备份,但是其不会备份spfile,命令如下,
RMAN> backup current controlfile;
Starting backup at 23-AUG-13
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
channel ORA_DISK_1: starting piece 1 at 23-AUG-13
channel ORA_DISK_1: finished piece 1 at 23-AUG-13
piece handle=/tmp/back/1joi1unc_1_1 tag=TAG20130823T205612 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:04
Finished backup at 23-AUG-13
3.可以在备份数据文件或者表空间时来添加备份,但是其不会备份spfile,命令如下
RMAN> backup datafile 4 include current controlfile;
或者
RMAN> backup tablespace sun include current controlfile;
(四)备份spfile
在开启自动备份控制文件时,会自动备份spfile。
也可以用如下命令备份,
RMAN> backup spfile format '/u01/backup/sp_%U';
Starting backup at 23-AUG-13
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=44 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 23-AUG-13
channel ORA_DISK_1: finished piece 1 at 23-AUG-13
piece handle=/u01/backup/sp_1qoi23po_1_1 tag=TAG20130823T222247 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 23-AUG-13
Starting Control File and SPFILE Autobackup at 23-AUG-13
piece handle=/u01/backup/ctl_c-3925834152-20130823-0a comment=NONE
Finished Control File and SPFILE Autobackup at 23-AUG-13
可以看到虽然命令只是备份spfile,但是控制文件也被备份了。
(五)备份归档日志文件
备份归档日志文件是把全部内容复制下来,命令如下,
RMAN> backup archivelog all format='/u01/backup/ac_%U' delete all input;
delete all input是把原来的归档日志文件删除掉。
在执行这个命令时,会检查归档日志文件是否损坏,如果发现一个地方的归档日志文件损坏,那么自动会读取另一个地方好的归档日志文件,若都有损坏,就拒绝备份。
为了确保归档日志的一致性,在对归档日志文件做备份时,做了如下的操作,
1.在备份命令开始后,首先是运行alter system archive log current命令,把联机重做日志文件复制到归档日志文件中。
2.对归档日志文件进行备份或者是数据文件和归档日志文件一起备份。
3.再一次运alter system archive log current命令(由于上一步会的时间可能会很长,这个时间段又会产生重做信息,所以要把联机重做日志文件再复制到归档日志文件中)。
4.再做一次归档日志文件的备份
或者用下面的命令,
backup archivelog sequence between 139 and 141 thread 1 delete (all) input;
可以选择sequence的备份范围;
或者
backup archivelog from time "sysdate-15" until time "sysdate-7";
可以选择时间的范围来备份归档日志文件;
或者在备份数据文件时把归档日志文件一起备份,
backup database plus archivelog format=’/u01/backup/db_%U’。
更多见

핫 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)

뜨거운 주제











Go 언어는 효율적이고 간결하며 배우기 쉬운 프로그래밍 언어입니다. 동시 프로그래밍과 네트워크 프로그래밍의 장점 때문에 개발자들이 선호합니다. 실제 개발에서 데이터베이스 작업은 필수적인 부분입니다. 이 기사에서는 Go 언어를 사용하여 데이터베이스 추가, 삭제, 수정 및 쿼리 작업을 구현하는 방법을 소개합니다. Go 언어에서는 일반적으로 사용되는 SQL 패키지, Gorm 등과 같은 타사 라이브러리를 사용하여 데이터베이스를 운영합니다. 여기서는 sql 패키지를 예로 들어 데이터베이스의 추가, 삭제, 수정 및 쿼리 작업을 구현하는 방법을 소개합니다. MySQL 데이터베이스를 사용하고 있다고 가정합니다.

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

Hibernate 다형성 매핑은 상속된 클래스를 데이터베이스에 매핑할 수 있으며 다음 매핑 유형을 제공합니다. Join-subclass: 상위 클래스의 모든 열을 포함하여 하위 클래스에 대한 별도의 테이블을 생성합니다. 클래스별 테이블: 하위 클래스별 열만 포함하는 하위 클래스에 대한 별도의 테이블을 만듭니다. Union-subclass: Joined-subclass와 유사하지만 상위 클래스 테이블이 모든 하위 클래스 열을 통합합니다.

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

MySQL 데이터베이스 관리 시스템의 기본 원리 분석 MySQL은 데이터 저장 및 관리를 위해 구조화된 쿼리 언어(SQL)를 사용하는 일반적으로 사용되는 관계형 데이터베이스 관리 시스템입니다. 이 글에서는 데이터베이스 생성, 데이터 테이블 설계, 데이터 추가, 삭제, 수정 및 쿼리 등을 포함한 MySQL 데이터베이스 관리 시스템의 기본 원리를 소개하고 구체적인 코드 예제를 제공합니다. 1. 데이터베이스 생성 MySQL에서는 먼저 데이터를 저장할 데이터베이스 인스턴스를 생성해야 합니다. 다음 코드는 "my

HTML은 데이터베이스를 직접 읽을 수 없지만 JavaScript 및 AJAX를 통해 읽을 수 있습니다. 단계에는 데이터베이스 연결 설정, 쿼리 보내기, 응답 처리 및 페이지 업데이트가 포함됩니다. 이 기사에서는 JavaScript, AJAX 및 PHP를 사용하여 MySQL 데이터베이스에서 데이터를 읽는 실제 예제를 제공하고 쿼리 결과를 HTML 페이지에 동적으로 표시하는 방법을 보여줍니다. 이 예제에서는 XMLHttpRequest를 사용하여 데이터베이스 연결을 설정하고 쿼리를 보내고 응답을 처리함으로써 페이지 요소에 데이터를 채우고 데이터베이스를 읽는 HTML 기능을 실현합니다.

PHP는 웹사이트 개발에 널리 사용되는 백엔드 프로그래밍 언어로, 강력한 데이터베이스 운영 기능을 갖추고 있으며 MySQL과 같은 데이터베이스와 상호 작용하는 데 자주 사용됩니다. 그러나 한자 인코딩의 복잡성으로 인해 데이터베이스에서 잘못된 한자를 처리할 때 문제가 자주 발생합니다. 이 기사에서는 잘못된 문자의 일반적인 원인, 솔루션 및 특정 코드 예제를 포함하여 데이터베이스에서 중국어 잘못된 문자를 처리하기 위한 PHP의 기술과 사례를 소개합니다. 문자가 왜곡되는 일반적인 이유는 잘못된 데이터베이스 문자 집합 설정 때문입니다. 데이터베이스를 생성할 때 utf8 또는 u와 같은 올바른 문자 집합을 선택해야 합니다.

GoWebSocket을 데이터베이스와 통합하는 방법: 데이터베이스 연결 설정: 데이터베이스/sql 패키지를 사용하여 데이터베이스에 연결합니다. WebSocket 메시지를 데이터베이스에 저장: INSERT 문을 사용하여 데이터베이스에 메시지를 삽입합니다. 데이터베이스에서 WebSocket 메시지 검색: SELECT 문을 사용하여 데이터베이스에서 메시지를 검색합니다.
