ORA-30046: Undo tablespace UNDOTBS1 not found in control file 無undo啟動庫
本來是要模擬ora 1173,但是出現其他的情況,簡單記錄下。
環境:win7+11.2.0.1
點選(此處)摺疊或開啟
-
C:\Users\Administrator>net start oracleserviceorcl --啟動服務 語法為:net start oracleservice+sid
-
OracleServiceORCL 服務正在啟動 ......
-
OracleServiceORCL 服務已經啟動成功。
-
-
-
C:\Users\Administrator>sqlplus / as sysdba
-
-
SQL*Plus: Release 11.2.0.1.0 Production on 星期日 2月 16 14:55:49 2014
-
-
Copyright (c) 1982, 2010, Oracle. All rights reserved.
-
-
-
連線到:
-
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production --版本
-
With the Partitioning, OLAP, Data Mining and Real Application Testing options
-
-
SQL> shutdown immediate;
-
資料庫已經關閉。
-
已經解除安裝資料庫。
-
ORACLE 例程已經關閉。
-
SQL>
-
-
SQL> startup nomount;
-
ORACLE 例程已經啟動。
-
-
Total System Global Area 1043886080 bytes
-
Fixed Size 2182344 bytes
-
Variable Size 603980600 bytes
-
Database Buffers 432013312 bytes
-
Redo Buffers 5709824 bytes
-
SQL> alter database mount;
-
-
資料庫已更改。
-
-
SQL> alter database backup controlfile to trace; --跟蹤控制檔案到trace
-
-
資料庫已更改。
-
-
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG --完整的控制檔案資訊
-
MAXLOGFILES 16
-
MAXLOGMEMBERS 3
-
MAXDATAFILES 100
-
MAXINSTANCES 8
-
MAXLOGHISTORY 292
-
LOGFILE
-
GROUP 1 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG' SIZE 50M BLOCKSIZE 512,
-
GROUP 2 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG' SIZE 50M BLOCKSIZE 512,
-
GROUP 3 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG\' SIZE 50M BLOCKSIZE 512
-
-- STANDBY LOGFILE
-
DATAFILE
-
'F:\\APP\\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF\,
-
'F:\\APP\\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF',
-
'F:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF',
-
'F:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF'
-
CHARACTER SET ZHS16GBK
-
;
-
-
-
C:\\Users\\Administrator>sqlplus / as sysdba
-
-
SQL*Plus: Release 11.2.0.1.0 Production on 星期日 2月 16 15:01:56 2014
-
-
Copyright (c) 1982, 2010, Oracle. All rights reserved.
-
-
-
連線到:
-
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
-
With the Partitioning, OLAP, Data Mining and Real Application Testing options
-
-
SQL> shutdown immediate;
-
ORA-01109: 資料庫未開啟
-
-
-
已經解除安裝資料庫。
-
ORACLE 例程已經關閉。
-
SQL> startup nomount;
-
ORACLE 例程已經啟動。
-
-
Total System Global Area 1043886080 bytes
-
Fixed Size 2182344 bytes
-
Variable Size 603980600 bytes
-
Database Buffers 432013312 bytes
-
Redo Buffers 5709824 bytes
-
SQL>
-
SQL> CREATE CONTROLFILE REUSE DATABASE \"ORCL\" NORESETLOGS NOARCHIVELOG --重建控制檔案 但是少寫undo的資訊.
-
2 MAXLOGFILES 16
-
3 MAXLOGMEMBERS 3
-
4 MAXDATAFILES 100
-
5 MAXINSTANCES 8
-
6 MAXLOGHISTORY 292
-
7 LOGFILE
-
8 GROUP 1 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\REDO01.LOG\' SIZE 50M BLOCKSIZE 512,
-
9 GROUP 2 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\REDO02.LOG\' SIZE 50M BLOCKSIZE 512,
-
10 GROUP 3 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\REDO03.LOG\' SIZE 50M BLOCKSIZE 512
-
11 -- STANDBY LOGFILE
-
12 DATAFILE
-
13 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\SYSTEM01.DBF\',
-
14 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\SYSAUX01.DBF\',
-
15 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\USERS01.DBF\'
-
16 CHARACTER SET ZHS16GBK
-
17 ;
-
-
控制檔案已建立。
-
-
SQL> alter database open;
-
alter database open
-
*
-
第 1 行出現錯誤:
-
ORA-01092: ORACLE instance terminated. Disconnection forced
-
ORA-30046: Undo tablespace UNDOTBS1 not found in control file. --報此錯誤
-
程式 ID: 3932
-
會話 ID: 125 序列號: 3
-
在引數檔案中新增引數 :*.undo_management='MANUAL' -
-
SQL>
-
-
SQL> conn / as sysdba
-
已連線到空閒例程。
-
SQL> create spfile from pfile;
-
-
檔案已建立。
-
-
SQL> startup
-
ORACLE 例程已經啟動。
-
-
Total System Global Area 1043886080 bytes
-
Fixed Size 2182344 bytes
-
Variable Size 603980600 bytes
-
Database Buffers 432013312 bytes
-
Redo Buffers 5709824 bytes
-
資料庫裝載完畢。
-
ORA-01113: 檔案 1 需要介質恢復
-
ORA-01110: 資料檔案 1: \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\SYSTEM01.DBF\'
-
-
-
SQL> recover database;
-
完成介質恢復。
-
SQL> alter database open; --成功open.
-
-
資料庫已更改。
-
-
SQL> select status from v$instance;
-
-
STATUS
-
------------
-
OPEN
-
-
SQL> show parameter undo
-
-
NAME TYPE VALUE
-
------------------------------------ ----------- ------------------------------
-
undo_management string MANUAL
-
undo_retention integer 900
-
undo_tablespace string UNDOTBS1
-
SQL>
-
-
SQL> select segment_name from dba_rollback_segs;
-
-
SEGMENT_NAME
-
------------------------------
-
SYSTEM
-
_SYSSMU10_378818850$
-
_SYSSMU9_3186340089$
-
_SYSSMU8_1682283174$
-
_SYSSMU7_1101470402$
-
_SYSSMU6_1439239625$
-
_SYSSMU5_2520346804$
-
_SYSSMU4_1451910634$
-
_SYSSMU3_478608968$
-
_SYSSMU2_1531987058$
-
_SYSSMU1_3086899707$
-
-
已選擇11行。
-
-
SQL> conn scott/tiger --解鎖下scott使用者
-
ERROR:
-
ORA-28000: the account is locked
-
-
-
警告: 您不再連線到 ORACLE。
-
SQL> alter user scott account unlock;
-
SP2-0640: 未連線
-
SQL> conn / as sysdba
-
已連線。
-
SQL> alter user scott account unlock;
-
-
使用者已更改。
-
-
SQL> conn scott/tiger
-
ERROR:
-
ORA-28001: the password has expired
-
-
-
更改 scott 的口令
-
新口令:
-
重新鍵入新口令:
-
口令已更改
-
已連線。
-
SQL> select * from cat;
-
-
TABLE_NAME TABLE_TYPE
-
------------------------------ -----------
-
BONUS TABLE
-
DEPT TABLE
-
EMP TABLE
-
SALGRADE TABLE
-
-
SQL> create table yws as select * from emp;
-
create table yws as select * from emp
-
*
-
第 1 行出現錯誤:
-
ORA-01552: cannot use system rollback segment for non-system tablespace \'USERS\' --當建立表的時候會報沒有回滾段
-
-
SQL> alter session set events \'10046 trace name context forever, level 12\'; --本想做個10046 許可權不夠
-
ERROR:
-
ORA-01031: insufficient privileges
-
用sys 使用者登入發現
-
SQL>
-
SQL> conn / as sysdba
-
已連線。
-
SQL> create table yws as select * from scott.emp; --但是sys使用者可以
-
-
表已建立。
-
-
SQL> select segment_name from dba_rollback_segs;
-
-
SEGMENT_NAME
-
------------------------------
-
SYSTEM
-
_SYSSMU10_378818850$
-
_SYSSMU9_3186340089$
-
_SYSSMU8_1682283174$
-
_SYSSMU7_1101470402$
-
_SYSSMU6_1439239625$
-
_SYSSMU5_2520346804$
-
_SYSSMU4_1451910634$
-
_SYSSMU3_478608968$
-
_SYSSMU2_1531987058$
-
_SYSSMU1_3086899707$
-
-
已選擇11行。
-
-
SQL> select segment_name,status from dba_rollback_segs;
-
-
SEGMENT_NAME STATUS
-
------------------------------ ----------------
-
SYSTEM ONLINE --是online的
-
_SYSSMU10_378818850$ OFFLINE
-
_SYSSMU9_3186340089$ OFFLINE
-
_SYSSMU8_1682283174$ OFFLINE
-
_SYSSMU7_1101470402$ OFFLINE
-
_SYSSMU6_1439239625$ OFFLINE
-
_SYSSMU5_2520346804$ OFFLINE
-
_SYSSMU4_1451910634$ OFFLINE
-
_SYSSMU3_478608968$ OFFLINE
-
_SYSSMU2_1531987058$ OFFLINE
-
_SYSSMU1_3086899707$ OFFLINE
-
-
已選擇11行。
-
-
SQL>
-
-
SQL> grant alter session to scott;
-
-
授權成功。
-
-
SQL> alter session set events \'10046 trace name context forever, level 12\';
-
-
會話已更改。
-
-
SQL> create table yws as select * from emp;
-
create table yws as select * from emp
-
*
-
第 1 行出現錯誤:
-
ORA-01552: 非系統表空間 \'USERS\' 不能使用系統回退段
-
-
- SQL> exit
10046的trace已經生成,抽時間寫下。
主要是是自己庫,基本就是屬於靜止庫,無事務發生,模擬失敗,簡單記錄下,繼續ing。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29477587/viewspace-1082131/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle - ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS1'Oracle
- undo壞塊引起資料庫無法啟動資料庫
- tablespace 大檔案,undo,temp tablespace
- Oracle OCP(48):UNDO TABLESPACEOracle
- oracle 切換undo tablespace小結Oracle
- Run Out Of Space On UNDO Tablespace Using DataPump Import/ExportImportExport
- oracle10g undo tablespace相關知識Oracle
- 使用_smu_debug_mode瞭解undo tablespace
- 啟動資料庫後,等待事件出現大量wait for undo record資料庫事件AI
- 處理undo tablespace損環_rman-06054_一則
- innodb_undo_tablespaces導致Mysql啟動報錯MySql
- 【Oracle】undo 自動調優Oracle
- Innodb undo之 undo結構簡析
- [oracle]undo表空間出錯,導致資料庫例項無法開啟Oracle資料庫
- MySQL undoMySql
- 自動undo表空間模式下切換新的undo表空間模式
- LMT更新file header bitmap不產生redo和undo ?Header
- UNDO表空間損壞導致資料庫無法OPEN資料庫
- Oracle Redo and UndoOracle Redo
- Oracle undo 管理Oracle
- Git undo 操作Git
- mysql undo管理MySql
- Oracle Undo SegmentOracle
- oracle undo管理Oracle
- oracle undo一Oracle
- Undo Mode (30)
- 【UNDO】使用重建UNDO表空間方法解決UNDO表空間過大問題
- Mysql啟動錯誤-server PID file could not be foundMySqlServer
- Innodb undo之 undo物理結構的初始化
- mysql 5.7啟動報錯"Expected to open undo tablespaces but was able to find only 0"MySql
- 改變資料庫undo表空間資料庫
- 【undo】undo 意外刪除處理辦法(非歸檔)
- Oracle 12c 新特性 - 臨時表undo(TEMP UNDO)Oracle
- ORA-30012 undo tablespace 'UNDOTBS3' does not exist or of wrong typeS3
- oracle管理之 undo tablespace(server.102 b14231)OracleServer
- 【手工建庫】確保資料庫處於自動 UNDO管理模式資料庫模式
- MySQL purge 清理undoMySql
- InnoDB undo log原理