同时丢失参数文件、控制文件及redologfile的不完全恢复(有数据
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/30839817 ##########恢复前的准备工作 1、做个热备 select alter tablespace ||tablespace_name|| begin backup; ||chr(10)|| host cp ||file_name|| /backup ||chr(10)|| alter tablespace |
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/30839817
##########恢复前的准备工作
1、做个热备select 'alter tablespace '||tablespace_name|| ' begin backup;' ||chr(10)|| 'host cp '||file_name||' /backup' ||chr(10)|| 'alter tablespace '||tablespace_name|| ' end backup;' from dba_data_files order by tablespace_name;
sys@PROD> alter tablespace SYSAUX begin backup;
2、日志做切换
sys@PROD> alter system switch logfile; System altered. sys@PROD> alter system switch logfile; System altered. sys@PROD> alter system switch logfile; System altered. sys@PROD> conn gyj/gyj Connected. gyj@PROD> select * from gyj_test1; ID NAME ---------- ---------------------------------------------------------------------------------------------------- 1 guoyJ 2 BBBBB gyj@PROD> insert into gyj_test1 values(3,'CCCCC'); 1 row created. gyj@PROD> commit; Commit complete. gyj@PROD> alter system switch logfile; System altered. gyj@PROD> alter system switch logfile; System altered.
3、丢失参数文件,控制文件,redo日志文件
[oracle@jfdb dbs]$ rm -rf spfile.ora [oracle@jfdb dbs]$ rm -rf spfilePROD.ora [oracle@jfdb dbs]$ rm -rf initPROD.ora [oracle@jfdb PROD]$ rm -rf control0* [oracle@jfdb PROD]$ rm -rf redo0*
###########开始恢复
[oracle@jfdb trace]$ cat alert_PROD.log vi /tmp/pfile.ora processes = 150 sga_max_size = 900M sga_target = 900M control_files = "/u01/app/oracle/oradata/PROD/control01.ctl" control_files = "/u01/app/oracle/oradata/PROD/control02.ctl" _controlfile_update_check= "OFF" db_block_size = 8192 log_archive_dest_1 = "location=/arch" undo_tablespace = "UNDOTBS" _in_memory_undo = FALSE service_names = "PROD,crm,oa" local_listener = "(DESCRIPTION= (ADDRESS_LIST= (ADDRESS = (PROTOCOL=TCP)(HOST=jfdb)(PORT=1521)) (ADDRESS = (PROTOCOL=TCP)(HOST=jfdb)(PORT=1522))))" db_name = "PROD" pga_aggregate_target = 200M
2、启动实例 sys@PROD> startup pfile='/tmp/pfile.ora' nomount; ORACLE instance started. Total System Global Area 939495424 bytes Fixed Size 2233960 bytes Variable Size 251660696 bytes Database Buffers 679477248 bytes Redo Buffers 6123520 bytes sys@PROD> create spfile from pfile='/tmp/pfile.ora'; File created.
oracle@jfdb arch]$ cd /backup [oracle@jfdb backup]$ ll total 1664052 -rw-r-----. 1 oracle oinstall 340795392 Jun 8 06:01 sysaux01.dbf -rw-r-----. 1 oracle oinstall 524296192 Jun 8 06:01 system01.dbf -rw-r-----. 1 oracle oinstall 524296192 Jun 8 06:01 tp01.dbf -rw-r-----. 1 oracle oinstall 209723392 Jun 8 06:01 undotbs01.dbf -rw-r-----. 1 oracle oinstall 104865792 Jun 8 06:02 users01.dbf [oracle@jfdb backup]$ cp * -rf /u01/app/oracle/oradata/PROD
4、查数据库字符集
select distinct dbms_rowid.rowid_block_number(rowid) from props$; DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID) ------------------------------------ 801 [oracle@jfdb PROD]$ dd if=system01.dbf of=guoyJoe bs=8192 skip=801 count=1 1+0 records in 1+0 records out 8192 bytes (8.2 kB) copied, 0.000159113 s, 51.5 MB/s [oracle@jfdb PROD]$ strings guoyJoe NO_USERID_VERIFIER_SALT 0438054C4F979EC5A5F74990346F5327, WORKLOAD_REPLAY_MODE bPREPARE implies external replay clients can connect; REPLAY implies workload replay is in progress, WORKLOAD_CAPTURE_MODE /CAPTURE implies workload capture is in progress, EXPORT_VIEWS_VERSION Export views revision #, DEFAULT_PERMANENT_TABLESPACE USERS$Name of default permanent tablespace, GLOBAL_DB_NAME PROD Global database name, NLS_RDBMS_VERSION 11.2.0.3.0 RDBMS version for NLS parameters, NLS_NCHAR_CHARACTERSET AL16UTF16 NCHAR Character set, NLS_NCHAR_CONV_EXCP FALSE NLS conversion exception, NLS_LENGTH_SEMANTICS BYTE NLS length semantics, NLS_COMP BINARY NLS comparison, NLS_DUAL_CURRENCY Dual currency symbol, NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR Timestamp with timezone format, NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR Time with timezone format, NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM Time stamp format, NLS_TIME_FORMAT HH.MI.SSXFF AM Time format, NLS_SORT BINARY Linguistic definition, NLS_DATE_LANGUAGE AMERICAN Date language, NLS_DATE_FORMAT DD-MON-RR Date format, NLS_CALENDAR GREGORIAN Calendar system, NLS_CHARACTERSET ZHS16GBK Character set, NLS_NUMERIC_CHARACTERS Numeric characters, NLS_ISO_CURRENCY AMERICA ISO currency, NLS_CURRENCY Local currency, NLS_TERRITORY AMERICA Territory, NLS_LANGUAGE AMERICAN Language, DEFAULT_TBS_TYPE SMALLFILE Default tablespace type, DST_SECONDARY_TT_VERSION 0'Version of secondary timezone data file, DST_PRIMARY_TT_VERSION 14%Version of primary timezone data file, DST_UPGRADE_STATE NONE&State of Day Light Saving Time Upgrade, DBTIMEZONE +08:00 DB time zone, TDE_MASTER_KEY_ID, Flashback Timestamp TimeZone GMT"Flashback timestamp created in GMT, DEFAULT_EDITION ORA$BASE$Name of the database default edition, DEFAULT_PERMANENT_TABLESPACE SYSTEM$Name of default permanent tablespace, DEFAULT_TEMP_TABLESPACE TEMPTS$Name of default temporary tablespace, DICT.BASE 2 dictionary base tables version #
5、创建控制文件
sys@PROD> CREATE CONTROLFILE REUSE DATABASE "PROD" RESETLOGS ARCHIVELOG 2 MAXLOGFILES 32 3 MAXLOGMEMBERS 2 4 MAXDATAFILES 32 5 MAXINSTANCES 1 6 MAXLOGHISTORY 449 7 LOGFILE 8 GROUP 1 '/u01/app/oracle/oradata/PROD/redo01.log' SIZE 50M, 9 GROUP 2 '/u01/app/oracle/oradata/PROD/redo02.log' SIZE 50M, 10 GROUP 3 '/u01/app/oracle/oradata/PROD/redo03.log' SIZE 50M 11 DATAFILE 12 '/u01/app/oracle/oradata/PROD/system01.dbf', 13 '/u01/app/oracle/oradata/PROD/sysaux01.dbf', 14 '/u01/app/oracle/oradata/PROD/undotbs01.dbf', 15 '/u01/app/oracle/oradata/PROD/users01.dbf', 16 '/u01/app/oracle/oradata/PROD/tp01.dbf' 17 CHARACTER SET ZHS16GBK; Control file created.
sys@PROD> select count(*) from v$archived_log; COUNT(*) ---------- 0 sys@PROD> alter database register physical logfile '/arch/1_134_842976958.dbf'; Database altered. sys@PROD> alter database register physical logfile '/arch/1_135_842976958.dbf'; Database altered. sys@PROD> alter database register physical logfile '/arch/1_136_842976958.dbf'; Database altered. sys@PROD> alter database register physical logfile '/arch/1_137_842976958.dbf'; Database altered. sys@PROD> alter database register physical logfile '/arch/1_138_842976958.dbf'; Database altered. sys@PROD> select count(*) from v$archived_log; COUNT(*) ---------- 5
sys@PROD> select file#,checkpoint_change# from v$datafile; FILE# CHECKPOINT_CHANGE# ---------- ------------------ 1 1658759 2 1658739 3 1658788 4 1658802 5 1658774 sys@PROD> select file#,checkpoint_change# from v$datafile_header; FILE# CHECKPOINT_CHANGE# ---------- ------------------ 1 1658759 2 1658739 3 1658788 4 1658802 5 1658774
8、开始不完全恢复
sys@PROD> recover database using backup controlfile until cancel; ORA-00279: change 1658739 generated at 06/08/2014 06:01:29 needed for thread 1 ORA-00289: suggestion : /arch/1_134_842976958.dbf ORA-00280: change 1658739 for thread 1 is in sequence #134 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} ORA-00279: change 1658838 generated at 06/08/2014 06:02:46 needed for thread 1 ORA-00289: suggestion : /arch/1_135_842976958.dbf ORA-00280: change 1658838 for thread 1 is in sequence #135 ORA-00278: log file '/arch/1_134_842976958.dbf' no longer needed for this recovery Specify log: {<RET>=suggested | filename | AUTO | CANCEL} ORA-00279: change 1658841 generated at 06/08/2014 06:02:47 needed for thread 1 ORA-00289: suggestion : /arch/1_136_842976958.dbf ORA-00280: change 1658841 for thread 1 is in sequence #136 ORA-00278: log file '/arch/1_135_842976958.dbf' no longer needed for this recovery Specify log: {<RET>=suggested | filename | AUTO | CANCEL} ORA-00279: change 1658844 generated at 06/08/2014 06:02:50 needed for thread 1 ORA-00289: suggestion : /arch/1_137_842976958.dbf ORA-00280: change 1658844 for thread 1 is in sequence #137 ORA-00278: log file '/arch/1_136_842976958.dbf' no longer needed for this recovery Specify log: {<RET>=suggested | filename | AUTO | CANCEL} ORA-00279: change 1658856 generated at 06/08/2014 06:03:17 needed for thread 1 ORA-00289: suggestion : /arch/1_138_842976958.dbf ORA-00280: change 1658856 for thread 1 is in sequence #138 ORA-00278: log file '/arch/1_137_842976958.dbf' no longer needed for this recovery Specify log: {<RET>=suggested | filename | AUTO | CANCEL} ORA-00279: change 1658859 generated at 06/08/2014 06:03:21 needed for thread 1 ORA-00289: suggestion : /arch/1_139_842976958.dbf ORA-00280: change 1658859 for thread 1 is in sequence #139 ORA-00278: log file '/arch/1_138_842976958.dbf' no longer needed for this recovery Specify log: {<RET>=suggested | filename | AUTO | CANCEL} cancel Media recovery cancelled.
9、再次查看数据文件头的检查点与控制文件的检查点是否一致
sys@PROD> select file#,checkpoint_change# from v$datafile; FILE# CHECKPOINT_CHANGE# ---------- ------------------ 1 1658859 2 1658859 3 1658859 4 1658859 5 1658859 sys@PROD> select file#,checkpoint_change# from v$datafile_header; FILE# CHECKPOINT_CHANGE# ---------- ------------------ 1 1658859 2 1658859 3 1658859 4 1658859 5 1658859
10、用resetlogs打开数据库
sys@PROD> alter database open resetlogs; Database altered. #########恢复完成

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

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

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

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

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

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

컴퓨터에서 폴더를 삭제하거나 압축을 풀 때 "오류 0x80004005: 지정되지 않은 오류"라는 프롬프트 대화 상자가 나타나는 경우가 있습니다. 이러한 상황이 발생하면 어떻게 해야 합니까? 실제로 오류 코드 0x80004005가 나타나는 데에는 여러 가지 이유가 있지만 대부분은 바이러스로 인해 발생합니다. 문제를 해결하기 위해 dll을 다시 등록할 수 있습니다. 아래에서는 편집기에서 0x80004005 오류 코드를 처리한 경험을 설명합니다. . 일부 사용자는 컴퓨터를 사용할 때 오류 코드 0X80004005가 표시됩니다. 0x80004005 오류는 주로 컴퓨터가 특정 동적 링크 라이브러리 파일을 올바르게 등록하지 않거나 컴퓨터와 인터넷 간의 HTTPS 연결을 허용하지 않는 방화벽으로 인해 발생합니다. 그렇다면 어떨까요?

파일 경로는 운영 체제에서 파일이나 폴더를 식별하고 찾는 데 사용되는 문자열입니다. 파일 경로에는 경로를 구분하는 두 가지 공통 기호, 즉 슬래시(/)와 백슬래시()가 있습니다. 이 두 기호는 운영 체제에 따라 용도와 의미가 다릅니다. 슬래시(/)는 Unix 및 Linux 시스템에서 일반적으로 사용되는 경로 구분 기호입니다. 이러한 시스템에서 파일 경로는 루트 디렉터리(/)에서 시작하고 각 디렉터리 사이를 슬래시로 구분합니다. 예를 들어 /home/user/Docume 경로는 다음과 같습니다.

Quark Netdisk와 Baidu Netdisk는 현재 파일 저장에 가장 일반적으로 사용되는 Netdisk 소프트웨어입니다. Quark Netdisk의 파일을 Baidu Netdisk에 저장하려면 어떻게 해야 합니까? 이번 호에서는 편집자가 Quark Network Disk 컴퓨터에서 Baidu Network Disk로 파일을 전송하는 방법에 대한 튜토리얼 단계를 정리했습니다. Quark 네트워크 디스크 파일을 Baidu 네트워크 디스크에 저장하는 방법은 무엇입니까? Quark Network Disk에서 Baidu Network Disk로 파일을 전송하려면 먼저 Quark Network Disk에서 필요한 파일을 다운로드한 다음 Baidu Network Disk 클라이언트에서 대상 폴더를 선택하고 열어야 합니다. 그런 다음 Quark Cloud Disk에서 다운로드한 파일을 Baidu Cloud Disk 클라이언트가 연 폴더에 끌어서 놓거나 업로드 기능을 사용하여 Baidu Cloud Disk에 파일을 추가합니다. 업로드가 완료된 후 파일이 Baidu Cloud Disk에 성공적으로 전송되었는지 확인하세요. 그게 다야

최근 많은 네티즌들이 편집자에게 hiberfil.sys 파일이 무엇인지 문의했습니다. hiberfil.sys가 C 드라이브 공간을 많이 차지하고 삭제될 수 있나요? 편집자는 hiberfil.sys 파일을 삭제할 수 있음을 알려줄 수 있습니다. 아래에서 자세한 내용을 살펴보겠습니다. hiberfil.sys는 Windows 시스템의 숨겨진 파일이자 시스템 최대 절전 모드 파일입니다. 일반적으로 C 드라이브의 루트 디렉터리에 저장되며 크기는 시스템에 설치된 메모리 크기와 동일합니다. 이 파일은 컴퓨터가 최대 절전 모드일 때 사용되며, 복구 시 빠르게 이전 상태로 복원할 수 있도록 현재 시스템의 메모리 데이터를 담고 있습니다. 크기가 메모리 용량과 동일하므로 하드 드라이브 공간을 더 많이 차지할 수 있습니다. 동면

Linux 시스템에서는 다음 명령을 사용하여 로그 파일의 내용을 볼 수 있습니다. tail 명령: tail 명령은 로그 파일 끝에 내용을 표시하는 데 사용됩니다. 최신 로그 정보를 보기 위한 일반적인 명령어입니다. tail [옵션] [파일 이름] 일반적으로 사용되는 옵션은 다음과 같습니다. -n: 표시할 줄 수를 지정합니다. 기본값은 10줄입니다. -f: 파일 내용을 실시간으로 모니터링하고, 파일이 업데이트되면 자동으로 새 내용을 표시합니다. 예: tail-n20logfile.txt#logfile.txt 파일의 마지막 20줄 표시 tail-flogfile.txt#logfile.txt 파일의 업데이트된 내용을 실시간으로 모니터링 head 명령: head 명령은 시작 부분을 표시하는 데 사용됩니다. 로그 파일의

C++ 매개변수 유형 안전성 검사는 함수가 컴파일 시간 검사, 런타임 검사 및 정적 어설션을 통해 예상된 유형의 값만 허용하도록 보장하여 예기치 않은 동작 및 프로그램 충돌을 방지합니다. 컴파일 시간 유형 검사: 컴파일러가 유형 호환성을 검사합니다. 런타임 유형 검사: 동적_캐스트를 사용하여 유형 호환성을 확인하고 일치하는 항목이 없으면 예외를 발생시킵니다. 정적 어설션: 컴파일 타임에 유형 조건을 어설션합니다.

MySQL에서 .ibd 파일의 역할 및 관련 주의사항에 대한 자세한 설명 MySQL은 널리 사용되는 관계형 데이터베이스 관리 시스템이며 데이터베이스의 데이터는 서로 다른 파일에 저장됩니다. 그 중 .ibd 파일은 InnoDB 스토리지 엔진의 데이터 파일로, 테이블에 데이터와 인덱스를 저장하는 데 사용됩니다. 이 기사에서는 MySQL에서 .ibd 파일의 역할에 대한 자세한 분석을 제공하고 관련 코드 예제를 제공하여 독자의 이해를 돕습니다. 1. .ibd 파일의 역할: 데이터 저장: .ibd 파일은 InnoDB 저장소입니다.

os.Rename 함수는 Go 언어에서 파일 이름을 바꾸는 데 사용됩니다. 구문은 funcRename(oldpath,newpathstring)error입니다. 이 함수는 oldpath로 지정된 파일의 이름을 newpath로 지정된 파일로 바꿉니다. 예를 들어 간단한 이름 바꾸기, 파일을 다른 디렉터리로 이동, 오류 처리 무시 등이 있습니다. 이름 바꾸기 기능은 원자성 작업을 수행하며 두 파일이 동일한 디렉터리에 있는 경우에만 디렉터리 항목을 업데이트할 수 있습니다. 볼륨 전체에서 또는 파일이 사용 중인 동안에는 이름 바꾸기가 실패할 수 있습니다.
