순서
- NMDA 모듈 설치
- client ssh에서 oracle 계정으로 접속
- oracle 환경변수 확인
- 미디어 관리 라이브러리 파일 링크
- archive log mode 확인
- NMC에서 client 등록
NMDA 모듈 설치
NMDA : Networker Module for Databases and Applications
tar -xvf로 압축 해제
rpm -ivh로 모듈 설치
rpm -qa | grep lgto로 모듈 설치 확인
oracle 계정으로 접속
root 계정으로 접속 시 oracle 환경변수가 없다
oracle 계정으로 접속
환경변수 확인
oracle에서 필요한 환경변수
ORACLE_HOME, ORACLE_SID 환경변수 확인하는 법
vi ~/.bash_profile
vi /home/oracle/.bash_profile
ORACLE_HOME : /app/u01/oracle/product/19.0.0/dbhome_1
ORACLE_SID : JWORA
TNS_ADMIN 환경변수 확인하는 법
$ORACLE_HOME/network/admin/
(tnsnames.ora 파일이 있는 경로가 TNS_ADMIN이다)
tnsnames.ora 내용물
미디어 관리 라이브러리 파일 링크
/usr/lib/libnsrora.so 파일을 $ORACLE_HOME/lib 디렉토리에 libobk.so라는 이름으로 링크 걸어준다
cd $ORACLE_HOME/lib
ln -s /usr/lib/libnsrora.so libobk.so
(oracle 계정으로 링크를 걸어주어야 oracle 계정으로 권한을 부여할 수 있다)
위에서 연결을 안 해줬을 경우
RMAN 스크립트를 통해 병렬 백업을 진행할 시 SBT_TAPE 변수가 libnsrora.so 파일에 있음을 직접 찾아주어도 된다
archive log mode 확인
sqlplus 접속
sqlplus '/as sysdba'
archive log 모드 확인
archive log list;
Database log mode가 Archive Mode로 되어 있어야 한다
Archive log mode를 바꾸려면 DB가 mount 상태여야 한다
DB mount 상태 변경
shutdown immediate;
startup mount;
archivelog mode 변경
alter database archivelog;
DB open
alter database open;
NMC oracle Client 등록
NMC 접속
oracle 클라이언트 등록
Oracle yes 확인
타입 선택
Custom 선택
Typical scheduled backup : 일반 옵션. 오라클을 전체 Full 백업 (DataFile + Archive)
Custom scheduled backup : 사용자 정의 옵션 (DataFile만 or Archive만)
RMAN 스크립트가 이미 구성되어 있을 경우 스크립트 파일 경로 찾아주기
(디폴트 : 공백)
Oracle 환경변수 입력
위의 환경변수에서 찾은 값들 입력
- ORACLE_HOME
- ORACLE_SID
- TNS_ADMIN
OS username : 오라클 계정 이름
백업할 object 선택
전체 database 선택
Back up the entire database or specific tablespaces and datafiles : 전체 데이터베이스나 특정 파일 받기 + 아카이브 파일 받기
Back up specific archived redo logs only : 아카이브 파일만 받기
백업 받을 Database 선택
RMAN 옵션 선택
channel : 병렬로 백업 받는 채
채널은 보통 8 or 16에서 선택 (채널이 많아질수록 리소스도 커진다)
Number of channel : 병렬로 한 번에 백업 받을 채널 가짓수 선택
Back up the control file : 컨트롤 파일도 백업 받기
Back up the archived redo logs : 아카이브 파일도 백업 받기
Filesperset : 1로 맞춰줘야 백업이 효율적으로 진행된다
backup name format
Option
Archive 옵션
(아카이브만 받기 하면 이거 나온다)
Number of channels : 아카이브 받는 채널 개수
Delete Options > Delete log after backup completes > Delete only if logs are older than : 표시한 날짜만큼 아카이브 파일 남기기 (예를 들어, 1day로 해놓고 금요일 오전 9시에 백업이 돌면, 오라클 안에서 목요일 오전 9시부터의 아카이브만 남기고 그 전 파일들은 삭제한다)
이렇게 다 선택하고 나면 RMAN 스크립트를 보여준다
RMAN 스크립트 전문
DataFile + Archive 백업 시
RUN {
ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/lib/libnsrora.so';
ALLOCATE CHANNEL CH2 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/lib/libnsrora.so';
BACKUP
FULL
FILESPERSET 1
FORMAT '%d_%U'
DATABASE
INCLUDE CURRENT CONTROLFILE
PLUS ARCHIVELOG;
RELEASE CHANNEL CH1;
RELEASE CHANNEL CH2;
}
Archive File만 백업 시
RUN {
ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE';
ALLOCATE CHANNEL CH2 TYPE 'SBT_TAPE';
BACKUP ARCHIVELOG ALL;
DELETE
ARCHIVELOG UNTIL TIME "SYSDATE-1"
BACKED UP 1 TIMES TO DEVICE TYPE
sbt;
RELEASE CHANNEL CH1;
RELEASE CHANNEL CH2;
}
클라이언트 생성 완료
그룹과 폴리시를 지정해주면 백업을 진행할 수 있다