오라클 데이터베이스 마이그레이션
만약: 원본 데이터베이스의 시스템 테이블스페이스와 Undo 테이블스페이스의 데이터 파일과 아카이브 로그가 모두 존재한다면 큰 문제는 없을 것이다. 이 복구 프로세스는 데이터베이스 복제 프로세스(데이터 가드와 동일하지 않음)와 마찬가지로 약간 복잡합니다. 일반적으로 이런 문제가 발생하면 데이터 복구 전문업체를 찾거나 데이터베이스 유지관리 업무를 맡게 됩니다. (이 복구 과정은 애초에 단순하지 않기 때문에 단순히 이전 오프라인 파일을 직접 복사하는 문제가 아니기 때문입니다.) 간단한 방법은 다음과 같습니다. 시도해 볼 수 있습니다.
방법은 다음과 같습니다.
1. 새 서버에 데이터베이스를 생성하지 않고 데이터베이스 소프트웨어를 설치합니다! (이전 데이터 파일 등을 사용해야 하기 때문에 라이브러리를 생성할 수 없습니다.)
2. 운영 체제에서 해당 운영 체제 디렉터리를 만듭니다.
(원래 라이브러리에 있는 매개변수 파일(spfile)을 계속 사용하고 있다면 매개변수 파일의 주석에 따라 해당 디렉터리를 생성하면 됩니다. 새로운 파일 저장소를 다시 만들고 싶다면 매개변수 파일은 spfile 파일 수정에 익숙하지 않은 경우 원본 spfile을 사용하여 매개변수 파일을 기반으로 해당 디렉터리를 생성하면 됩니다.) 매개변수 파일을 기반으로 생성하면 됩니다. 다음은 예시를 위한 예시일 뿐입니다.
일반 설정(인스턴스 이름 가정: 대기1):
c:\> mkdir F:\oracle\product\10.2.0\oradata\standby1(데이터 파일을 저장하는 데 사용됨) , 제어 파일 등)
c:\> mkdir F:\oracle\product\10.2.0\admin\standby1\bdump(추적 파일)
c:\> mkdir F :\oracle\product\10.2.0\admin\standby1\udump(사용자 파일)
c:\> mkdir F:\oracle\product\10.2.0\admin\standby1\cdump< /p >
c:\> mkdir F:\oracle\product\10.2.0\admin\standby1\adump
3. 루틴 서비스 생성
c:\> oradim -new -sid Standby1 -intpwd cs -startmode a
4. 매개변수 파일(spfile)을 x:\oracle\product\10.2.0\db_1\database 디렉토리에 복사합니다.
Tip: 신규 서버에 데이터 파일, 컨트롤 파일, 트래킹 파일 등이 저장되는 위치가 소스 라이브러리의 위치와 동일할 경우, 파라미터 수정 없이 데이터베이스 디렉토리에 직접 복사 가능 파일. 다르면 매개변수 파일을 수정해야 합니다.
5. 원본 데이터베이스의 데이터 파일과 아카이브 로그를 새 서버에 복사합니다. (구체적인 위치는 Spfile 파일에 표시된 항목을 참조하세요. 그렇지 않으면 실수하지 마세요. 오류가 보고됩니다)
6. Standby1의 모니터링 및 네트워크 서비스 구성
팁: 모니터링을 구성한 후에는 다시 시작해야 합니다! 그런데 원본 x:\oracle\product\10.2.0\db_1\NETWORK\ADMIN의 Listener.ora 및 tnsnames.ora를 새 서비스 x:\oracle\product\ 10.2에 직접 복사할 수 있습니다. 0\db_1\NETWORK\ADMIN 디렉터리입니다. 대체: 새 서버의 이름과 IP가 다르기 때문에 Listener.ora 및 tnsnames.ora 파일에서 IP 주소나 호스트 이름을 수정해야 합니다.
IP와 호스트 이름이 이전과 동일하다면 수정할 필요가 없습니다.
기억하세요: 모니터링 다시 시작 방법:
c:\>lsnrctl stop
c:\>lnsrctl start
7. 루틴을 실행하고 컨트롤 파일을 생성합니다. (컨트롤 파일을 다시 생성해야 합니다. 원본 컨트롤 파일에 기록된 현재 로그 시퀀스 번호, 체크포인트 정보, 로그 이력 정보 등이 새 라이브러리의 것과 다르며 원본과 다릅니다. 사용할 수 없음)
c:\>sqlplussys/oracle@standby1 as sysdba;
sql> start nomount spfile='x:\oracle\product\10.2.0\db_1\ 데이터베이스\spfileSTANDBY1'
sql> 제어 파일 생성 재사용 데이터베이스 "standby1" NORESETLOGS 강제 로깅 ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
로그 파일
그룹 1 'F:\ORACLE\PRODUCT\10.2.0\ORADATA\ 대기1\REDO01.LOG ' 크기 50M,
그룹 2 'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\REDO02.LOG' 크기 50M,
그룹 3 'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\REDO03.LOG' 크기 50M
데이터 파일
'F:\ORACLE\PRODUCT\10.2.0\ORADATA \standby1\SYSTEM01.DBF',
'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\UNDOTBS01.DBF',
'F:\ORACLE\PRODUCT \10.2.0\ ORADATA\standby1\SYSAUX01.DBF',
'F:\ORACLE\PRODUCT\10.2.0\ORADATA\standby1\USERS01.DBF'
문자 집합 ZHS16GBK;
알림: 위의 SQL 문에서 실제 상황에 따라 해당 매개변수 파일의 위치를 수정해야 하며 인스턴스 이름도 실제 상황에 따라 수정해야 합니다.
8. 원본 데이터베이스 복원
원본 데이터베이스의 아카이브 로그를 새 데이터베이스에 저장하는 경우: f:\archive
sql> set logsource 'f :\archive'
sql> 취소할 때까지 백업 제어 파일을 사용하여 데이터베이스 복구
프롬프트에 따라 입력: canel
9. /p>
sql> alter Database open Resetlogs;
10. 임시 파일 추가(그렇지 않으면 정렬 작업 중에 오류가 보고됩니다.)
sql > alter tablespace temp add tempfile 'f:\standby1\ temp.dbf' 크기 5M 재사용;
기타: RMAN 또는 사용자 관리 등을 통해 원본 데이터베이스의 전체 데이터베이스 백업을 수행한 경우 이 방법을 사용하십시오. 복구에 사용할 필요는 없습니다. 데이터베이스 전체에 대한 백업과 아카이브 로그가 있어 복구가 더욱 간편해집니다.