sysaux在沒有備份的情況下,資料塊損壞,資料庫啟動不了處理
具體的思路:
(一) 考慮在控制檔案中把sysaux表空間給剔除掉,啟動資料庫
1 建立控制檔案
alter database backup controlfile to trace as '/oracle/DEV/control01.bak';
2 檢視/oracle/DEV/control01.bak內容
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "DEV" NORESETLOGS ARCHIVELOG
MAXLOGFILES 255
MAXLOGMEMBERS 3
MAXDATAFILES 254
MAXINSTANCES 50
MAXLOGHISTORY 4041
LOGFILE
GROUP 1 (
'/oracle/DEV/origlogA/log_g11m1.dbf',
'/oracle/DEV/mirrlogA/log_g11m2.dbf'
) SIZE 50M BLOCKSIZE 512,
GROUP 2 (
'/oracle/DEV/origlogB/log_g12m1.dbf',
'/oracle/DEV/mirrlogB/log_g12m2.dbf'
) SIZE 50M BLOCKSIZE 512,
GROUP 3 (
'/oracle/DEV/origlogA/log_g13m1.dbf',
'/oracle/DEV/mirrlogA/log_g13m2.dbf'
) SIZE 50M BLOCKSIZE 512,
GROUP 4 (
'/oracle/DEV/origlogB/log_g14m1.dbf',
'/oracle/DEV/mirrlogB/log_g14m2.dbf'
) SIZE 50M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
'/oracle/DEV/sapdata1/system_1/system.data1',
'/oracle/DEV/sapdata1/sysaux_1/sysaux.data1',
'/oracle/DEV/sapdata1/undo_1/undo.data1',
'/oracle/DEV/sapdata2/sr3_1/sr3.data1',
'/oracle/DEV/sapdata2/sr3_2/sr3.data2',
'/oracle/DEV/sapdata2/sr3_3/sr3.data3',
'/oracle/DEV/sapdata2/sr3_4/sr3.data4',
'/oracle/DEV/sapdata2/sr3_5/sr3.data5',
'/oracle/DEV/sapdata2/sr3_6/sr3.data6',
'/oracle/DEV/sapdata2/sr3_7/sr3.data7',
'/oracle/DEV/sapdata2/sr3_8/sr3.data8',
'/oracle/DEV/sapdata2/sr3_9/sr3.data9',
'/oracle/DEV/sapdata2/sr3_10/sr3.data10',
'/oracle/DEV/sapdata2/sr3_11/sr3.data11',
'/oracle/DEV/sapdata2/sr3_12/sr3.data12',
'/oracle/DEV/sapdata2/sr3_13/sr3.data13',
'/oracle/DEV/sapdata2/sr3_14/sr3.data14',
'/oracle/DEV/sapdata2/sr3_15/sr3.data15',
'/oracle/DEV/sapdata2/sr3_16/sr3.data16',
'/oracle/DEV/sapdata3/sr3702_1/sr3702.data1',
'/oracle/DEV/sapdata3/sr3702_2/sr3702.data2',
'/oracle/DEV/sapdata3/sr3702_3/sr3702.data3',
'/oracle/DEV/sapdata3/sr3702_4/sr3702.data4',
'/oracle/DEV/sapdata3/sr3702_5/sr3702.data5',
'/oracle/DEV/sapdata3/sr3702_6/sr3702.data6',
'/oracle/DEV/sapdata3/sr3702_7/sr3702.data7',
'/oracle/DEV/sapdata3/sr3702_8/sr3702.data8',
'/oracle/DEV/sapdata3/sr3702_9/sr3702.data9',
'/oracle/DEV/sapdata3/sr3702_10/sr3702.data10',
'/oracle/DEV/sapdata3/sr3702_11/sr3702.data11',
'/oracle/DEV/sapdata3/sr3702_12/sr3702.data12',
'/oracle/DEV/sapdata3/sr3702_13/sr3702.data13',
'/oracle/DEV/sapdata3/sr3702_14/sr3702.data14',
'/oracle/DEV/sapdata4/sr3usr_1/sr3usr.data1'
CHARACTER SET UTF8
;
3 啟動資料庫nomount狀態下,排除資料檔案'/oracle/DEV/sapdata1/sysaux_1/sysaux.data1',
建立控制檔案
SQL> CREATE CONTROLFILE REUSE DATABASE "DEV" NORESETLOGS ARCHIVELOG
2 MAXLOGFILES 255
MAXLOGMEMBERS 3
MAXDATAFILES 254
MAXINSTANCES 50
MAXLOGHISTORY 4041
LOGFILE
GROUP 1 (
'/oracle/DEV/origlogA/log_g11m1.dbf',
'/oracle/DEV/mirrlogA/log_g11m2.dbf'
) SIZE 50M BLOCKSIZE 512,
GROUP 2 (
'/oracle/DEV/origlogB/log_g12m1.dbf',
'/oracle/DEV/mirrlogB/log_g12m2.dbf'
) SIZE 50M BLOCKSIZE 512,
GROUP 3 (
'/oracle/DEV/origlogA/log_g13m1.dbf',
'/oracle/DEV/mirrlogA/log_g13m2.dbf'
) SIZE 50M BLOCKSIZE 512,
GROUP 4 (
'/oracle/DEV/origlogB/log_g14m1.dbf',
'/oracle/DEV/mirrlogB/log_g14m2.dbf'
3 4 5 6 7 8 9 10 ) SIZE 50M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
'/oracle/DEV/sapdata1/system_1/system.data1',
'/oracle/DEV/sapdata1/undo_1/undo.data1',
'/oracle/DEV/sapdata2/sr3_1/sr3.data1',
'/oracle/DEV/sapdata2/sr3_2/sr3.data2',
'/oracle/DEV/sapdata2/sr3_3/sr3.data3',
'/oracle/DEV/sapdata2/sr3_4/sr3.data4',
'/oracle/DEV/sapdata2/sr3_5/sr3.data5',
'/oracle/DEV/sapdata2/sr3_6/sr3.data6',
'/oracle/DEV/sapdata2/sr3_7/sr3.data7',
'/oracle/DEV/sapdata2/sr3_8/sr3.data8',
'/oracle/DEV/sapdata2/sr3_9/sr3.data9',
'/oracle/DEV/sapdata2/sr3_10/sr3.data10',
'/oracle/DEV/sapdata2/sr3_11/sr3.data11',
'/oracle/DEV/sapdata2/sr3_12/sr3.data12',
'/oracle/DEV/sapdata2/sr3_13/sr3.data13',
'/oracle/DEV/sapdata2/sr3_14/sr3.data14',
'/oracle/DEV/sapdata2/sr3_15/sr3.data15',
'/oracle/DEV/sapdata2/sr3_16/sr3.data16',
'/oracle/DEV/sapdata3/sr3702_1/sr3702.data1',
'/oracle/DEV/sapdata3/sr3702_2/sr3702.data2',
'/oracle/DEV/sapdata3/sr3702_3/sr3702.data3',
11 12 13 14 15 '/oracle/DEV/sapdata3/sr3702_4/sr3702.data4',
'/oracle/DEV/sapdata3/sr3702_5/sr3702.data5',
'/oracle/DEV/sapdata3/sr3702_6/sr3702.data6',
'/oracle/DEV/sapdata3/sr3702_7/sr3702.data7',
'/oracle/DEV/sapdata3/sr3702_8/sr3702.data8',
'/oracle/DEV/sapdata3/sr3702_9/sr3702.data9',
'/oracle/DEV/sapdata3/sr3702_10/sr3702.data10',
'/oracle/DEV/sapdata3/sr3702_11/sr3702.data11',
'/oracle/DEV/sapdata3/sr3702_12/sr3702.data12',
'/oracle/DEV/sapdata3/sr3702_13/sr3702.data13',
'/oracle/DEV/sapdata3/sr3702_14/sr3702.data14',
'/oracle/DEV/sapdata4/sr3usr_1/sr3usr.data1'
CHARACTER SET UTF8
;
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
Control file created.
4 開啟資料庫
Control file created.
SQL> SQL> SQL> SQL> SQL> SQL> alter database mount;
alter database mount
*
ERROR at line 1:
ORA-01100: database already mounted
SQL> alter database open;
Database altered.
5 檢測資料的完整性
SQL> select name from v$tablespace;
NAME
------------------------------
SYSTEM
PSAPUNDO
PSAPSR3
PSAPSR3702
PSAPSR3USR
SYSAUX
PSAPTEMP
7 rows selected
注:SYSAUX表空間是存在的,使用select訪問各表,均可以訪問,故資料是完成的
7 設定sysaux表空間為offline
SQL> alter tablespace sysaux offline;
alter tablespace sysaux offline
*
ERROR at line 1:
ORA-01191: file 2 is already offline - cannot do a normal offline
ORA-01111: name for data file 2 is unknown - rename to correct file
ORA-01110: data file 2: '/oracle/DEV/112_64/dbs/MISSING00002'
注:這樣設定後,其實資料檔案已經offline
(二) 在其他伺服器上建立資料庫
略
(三) 把資料匯入新建資料庫中
sapdb:oradev 80> exp sapsr3/Geely123 file=sap.dmp owner=sapsr3 rows=n buffer=6500000
Export: Release 11.2.0.3.0 - Production on Thu Oct 10 15:24:12 2013
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Export done in UTF8 character set and UTF8 NCHAR character set
Note: table data (rows) will not be exported
. exporting pre-schema procedural objects and actions
注:由此可知此方式是可以的