您好,登錄后才能下訂單哦!
《DBA入門、進階與診斷案例》中2.3.1章節的案例進行模擬
[oracle@021Y-SH-BKAP dbs]$ vi initorcl.ora orcl.__db_cache_size=2885681152 orcl.__java_pool_size=67108864 orcl.__large_pool_size=67108864 orcl.__oracle_base='/DBBK/oracle'#ORACLE_BASE set from environment orcl.__pga_aggregate_target=2684354560 orcl.__sga_target=4026531840 orcl.__shared_io_pool_size=0 orcl.__shared_pool_size=939524096 orcl.__streams_pool_size=0 *.audit_file_dest='/DBBK/oracle/admin/orcl/adump' *.audit_trail='db' *.compatible='11.2.0.0.0' *.control_files='/DBBK/oracle/oradata/orcl/control01.ctl','/DBBK/oracle/oradata/orcl/control03.ctl','/DBBK/oracle/flash_recovery_area/orcl/control02.ctl' *.db_block_size=8192 *.db_cache_size=25165824 *.db_domain='' *.db_name='orcl' *.db_recovery_file_dest='/DBBK/oracle/flash_recovery_area' *.db_recovery_file_dest_size=4070572032 *.diagnostic_dest='/DBBK/oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' *.fast_start_mttr_target=180 *.memory_target=6689914880 *.open_cursors=300 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.undo_tablespace='UNDOTBS2'
我修改了pfile中的undo_tablespace='UNDOTBS2'參數值,重新以加載pfile文件的方式啟動數據庫。
SQL> startup pfile='/DBBK/oracle/product/11.2.0.1.0/dbs/initorcl.ora' ORACLE instance started. Total System Global Area 6680915968 bytes Fixed Size 2213936 bytes Variable Size 3758098384 bytes Database Buffers 2885681152 bytes Redo Buffers 34922496 bytes Database mounted. ORA-01092: ORACLE instance terminated. Disconnection forced ORA-30012: undo tablespace 'UNDOTBS2' does not exist or of wrong type Process ID: 11428 Session ID: 96 Serial number: 3
查看alter_<sid_name>.log中的記錄發現如下報錯:
Errors in file /DBBK/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_11428.trc: ORA-30012: undo tablespace 'UNDOTBS2' does not exist or of wrong type Errors in file /DBBK/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_11428.trc: ORA-30012: undo tablespace 'UNDOTBS2' does not exist or of wrong type Error 30012 happened during db open, shutting down database USER (ospid: 11428): terminating the instance due to error 30012 Instance terminated by USER, pid = 11428 ORA-1092 signalled during: ALTER DATABASE OPEN... opiodr aborting process unknown ospid (11428) as a result of ORA-1092 Tue Jan 27 17:43:33 2015 ORA-1092 : opitsk aborting process
查看ORA報錯信息的解釋
[oracle@021Y-SH-BKAP dbs]$ oerr ora 30012 30012, 00000, "undo tablespace '%s' does not exist or of wrong type" // *Cause: the specified undo tablespace does not exist or of the // wrong type. // *Action: Correct the tablespace name and reissue the statement.
[oracle@021Y-SH-BKAP dbs]$ oerr ora 1092 01092, 00000, "ORACLE instance terminated. Disconnection forced" // *Cause: The instance this process was connected to was terminated // abnormally, probably via a shutdown abort. This process // was forced to disconnect from the instance. // *Action: Examine the alert log for more details. When the instance has been // restarted, retry action.
檢查UNDO控件是否存在:
cd $ORACLE_BASE/oradata/orcl -rw-r----- 1 oracle oinstall 104865792 Jan 27 17:43 undotbs01.dbf
啟動數據庫都mount狀態
SQL> startup mount pfile='/DBBK/oracle/product/11.2.0.1.0/dbs/initorcl.ora'; ORACLE instance started. Total System Global Area 6680915968 bytes Fixed Size 2213936 bytes Variable Size 3758098384 bytes Database Buffers 2885681152 bytes Redo Buffers 34922496 bytes Database mounted.
查看啟動參數,發現數據庫mount的是UNDOTBS2
SQL> show parameter undo_tablespace NAME TYPE VALUE ------------------------------------ --------------------------------- ------------------------------ undo_tablespace string UNDOTBS2 SQL> show parameter pfile NAME TYPE VALUE ------------------------------------ --------------------------------- ------------------------------ spfile string
那么這里可以確定,因為我啟動的時候沒有使用SPFILE,或者另一種情況SPFILE中的參數值被我不小心改錯了。導致啟動時候加載錯誤而參數的報錯。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。