Oracle資料庫例項啟動步驟分析
1、nomout階段,該階段啟動的前提是有引數檔案,若沒有引數檔案,系統無法啟動,在該過程中,系統分配記憶體、開啟後臺程序,同時更新alter日誌檔案
例項nomount之前的狀態:
--無例項程序
[[email protected] admin]$ echo $ORACLE_SID
PROD
[[email protected] admin]$ ps -ef|grep PROD
oracle 14890 6310 0 21:12 pts/1 00:00:00 grep PROD
--alter日誌資訊
[[email protected] bdump]$ ls -lrt
total 48
-rw-r----- 1 oracle oinstall 1113 Mar 4 23:15 prod_lgwr_7319.trc
-rw-r----- 1 oracle oinstall 779 Mar 5 19:42 prod_mmnl_7329.trc
-rw-r--r-- 1 oracle oinstall 40910 Mar 5 21:08 alert_PROD.log
此時啟動例項到nomount狀態
[[email protected] admin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 5 21:15:50 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 100664720 bytes
Database Buffers 209715200 bytes
Redo Buffers 2973696 bytes
SQL>
此時檢視程序和日誌資訊
[
total 52
-rw-r----- 1 oracle oinstall 1113 Mar 4 23:15 prod_lgwr_7319.trc
-rw-r----- 1 oracle oinstall 779 Mar 5 19:42 prod_mmnl_7329.trc
-rw-r--r-- 1 oracle oinstall 42513 Mar 5 21:15 alert_PROD.log ----------------日誌檔案已經更新
[[email protected] bdump]$ ps -ef|grep PROD ----------------------------系統中出現後臺程序
oracle 14946 1 0 21:15 ? 00:00:00 ora_pmon_PROD
oracle 14948 1 0 21:15 ? 00:00:00 ora_psp0_PROD
oracle 14950 1 0 21:15 ? 00:00:00 ora_mman_PROD
oracle 14952 1 0 21:15 ? 00:00:00 ora_dbw0_PROD
oracle 14954 1 0 21:15 ? 00:00:00 ora_lgwr_PROD
oracle 14956 1 0 21:15 ? 00:00:00 ora_ckpt_PROD
oracle 14958 1 0 21:15 ? 00:00:00 ora_smon_PROD
oracle 14960 1 0 21:15 ? 00:00:00 ora_reco_PROD
oracle 14962 1 0 21:15 ? 00:00:00 ora_mmon_PROD
oracle 14964 1 0 21:15 ? 00:00:00 ora_mmnl_PROD
oracle 14965 14942 0 21:15 ? 00:00:00 oraclePROD (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle 14988 5989 0 21:17 pts/3 00:00:00 grep PROD
如果在$ORACLE_HOME/dbs目錄下無引數檔案,啟動例項是現象如下:
[
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 5 21:21:19 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/10.2.0/db_1/dbs/initPROD.ora'
SQL> quit
引數尋找的優先順序 spfileSID.ora----initSID.ora
在該階段,可以進行資料庫的建立、控制檔案的建立
2、mount,在該階段,啟動條件是需要有控制檔案,如果控制檔案丟失或者損壞,啟動將會報錯。此時系統會開啟控制檔案、檢查資料檔案、日誌檔案的名稱和位置,
但此時不檢查檔案到底是否存在不存在
mount之前:
SQL> select * from v$controlfile;
no rows selected
SQL> select * from v$datafile;
select * from v$datafile
*
ERROR at line 1:
ORA-01507: database not mounted
mount之後
SQL> alter database mount;
Database altered.
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/PROD/disk1/control01.ctl
/u01/app/oracle/oradata/PROD/disk2/control02.ctl
SQL> select file#,name from v$datafile;
FILE# name
--------------------------------------------------------------------------------
1 /u01/app/oracle/oradata/PROD/disk1/system01.dbf
2 /u01/app/oracle/oradata/PROD/disk1/undotbs01.dbf
3 /u01/app/oracle/oradata/PROD/disk1/sysaux01.dbf
在該階段,可以進行資料庫的完全恢復、修改資料庫的歸檔模式、移動和重命令資料檔案
SQL> archive log list ---檢視資料庫歸檔模式
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /u01/app/oracle/product/10.2.0/db_1/dbs/arch
Oldest online log sequence 3
Current log sequence 5
SQL> alter database archivelog; ---修改成歸檔模式
SQL> alter database noarchivelog;---修改成非歸檔模式
如果控制檔案丟失,系統報錯,現象如下:
SQL> startup mount
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 100664720 bytes
Database Buffers 209715200 bytes
Redo Buffers 2973696 bytes
ORA-00205: error in identifying control file, check alert log for more info
3、open階段,該階段主要是開啟資料檔案、日誌檔案,在開啟的過程中對資料檔案和日誌檔案進行一致性檢查,如果不一致,則SMON程序繼續例項恢復,如果檔案丟失,開啟失敗。
SQL> alter database open;
Database altered.
--如何資料檔案丟下,開啟失敗
SQL> startup mount;
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 79693200 bytes
Database Buffers 230686720 bytes
Redo Buffers 2973696 bytes
Database mounted.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01157: cannot identify/lock data file 1 - see DBWR trace file
ORA-01110: data file 1: '/u01/app/oracle/oradata/PROD/disk1/system01.dbf'
4、小結
啟動時分成三個步驟,1、nomount階段,該階段是例項啟動,根據引數檔案進行系統分配記憶體,啟動後臺程序。mount階段,根據控制檔案來進行資料檔案和日誌檔案的名稱和位置檢查,把例項和資料庫連線起來。open階段,就是資料庫開啟階段,開啟是就需要檢查檔案是否正常,有沒有發生檔案丟失或者不一致的情況,丟失則報錯,不一致則進行例項恢復。
jiangkch
20140305
---------------------------------------------
轉:http://blog.itpub.net/393784/viewspace-1101878/
相關推薦
Oracle資料庫例項啟動步驟分析
Oracle資料庫例項啟動時,分成nomount、mount和open的三個階段,下面的例項分析來展示不同階段時,系統到底做了哪些工作1、nomout階段,該階段啟動的前提是有引數檔案,若沒有引數檔案,系統無法啟動,在該過程中,系統分配記憶體、開啟後臺程序,同時更新alte
檢視Oracle資料庫例項啟動狀態
SQL> conn / as sysdba 已連線到空閒例程。 SQL> startup nomount ORACLE 例程已經啟動。 Total System Global Area 534462464 bytes Fixed Size 21
Oracle 資料庫例項啟動關閉過程
--================================-->Oracle 資料庫例項啟動關閉過程--================================/*Oracle資料庫例項的啟動,嚴格來說應該是例項的啟動,資料庫僅僅是在例項啟動後進行裝載。
Oracle 資料庫例項的啟動階段及關閉模式
一、資料庫例項啟動的三個階段 啟動資料庫分為三個階段: Startup nomount; --startup預設為startup open Alter database mount; Al
分享知識-快樂自己: Oracle資料庫例項、使用者、表、表空間之間關係
資料庫: Oracle資料庫是資料的物理儲存。這就包括(資料檔案ORA或者DBF、控制檔案、聯機日誌、引數檔案)。 其實Oracle資料庫的概念和其它資料庫不一樣,這裡的資料庫是一個作業系統只有一個庫。可以看作是Oracle就只有一個大資料庫。 例項: 一個Oracle例項(Oracle
JDBC連線Oracle資料庫例項
本文給出一個通過JDBC連線Oracle資料庫的例項,希望對JDBC初學者有所幫助。我沒有像很多例子那樣一個函式就把整個JDBC的操作全部完成,這樣的程式碼在企業專案開發中一般是不能通過稽核的,我現在工作的公司就對程式碼規範有嚴格要求。比如,“一個函式,只做一件事”。這意味著你不能把一大堆功能程式碼
Oracle資料庫的啟動過程
[email protected] zxy>startup ORACLE instance started. Total System Global Area 830930944 bytes Fixed Size 2232
Oracle (01)Oracle資料庫的安裝步驟.搭建上課所用的資料庫環境.table (二維表).查看錶結構.資料庫中常用的資料型別
Oracle 01 目錄 Oracle資料庫的安裝步驟 搭建上課所用的資料庫環境 table (二維表) ***** 查看錶結構 ***** 資料庫中常用的資料型別 ***** SQL語句 ***** where子句 ***** 對於null值 如何進行判斷 ***** 模糊查詢 *
maven執行ssh三大框架+oracle資料庫的一般步驟及注意事項
maven執行ssh框架一般步驟: (一)建立父工程(maven project)ssh_parent(pom) 1、配置pom.xml。 2、maven的倉庫有三種:本地倉庫、私服、中央倉庫,程式執
Oracle資料庫例項、使用者、表、表空間之間關係
資料庫:Oracle資料庫是資料的物理儲存。這就包括(資料檔案ORA或者DBF、控制檔案、聯機日誌、引數檔案)。其實Oracle資料庫的概念和其它資料庫不一樣,這裡的資料庫是一個作業系統只有一個庫。可以看作是Oracle就只有一個大資料庫。例項: 一個Oracle例項(O
Oracle 資料庫例項介紹
文章目錄 資料庫例項介紹 例項結構 例項配置 讀寫例項與只讀例項 例項生命週期 例項標識 Oracle 根目錄 Oracle 主目錄 Oracle SI
阿里雲伺服器oracle資料庫安裝使用步驟
阿里雲伺服器安裝使用步驟伺服器有很多種平臺去購買,這裡以阿里雲(Windows版)為例說明2、購買後,你會得到阿里雲給你分配的公網ip地址,需要記住,用電腦使用遠端桌面連線伺服器,需要用你的公網IP地址連線3、安裝oracle資料庫:需要在電腦上下載一個瀏覽器安裝包,然後複製
linux/unix 下修改oracle資料庫例項名
1、檢查原來的資料庫例項名 $ echo $ORACLE_SID orcl $ sqlplus / as sysdba > select instance from v$thread; INS
Oracle資料庫的啟動和關閉詳細過程
一、資料庫開啟 startup資料庫正常啟動 1.startup nomount 啟動 Oracle DB 例項:NOMOUNT ,建立sga,建立了alert日誌,用於create db,create controlfile 啟動資料庫例項時,請選擇例項啟動時所處
oracle資料庫的啟動與關閉
連線資料庫 sqlplus " / as sysdba" 或者 sqlplus /nolog connect / as sysdba 啟動資料庫 startup 引數: NOMOUNT,MOUNT,OPEN,FORCE,RESTRICT 引數說明:
windows下面 修改oracle資料庫例項名(SID)
SQL*Plus: Release 9.2.0.5.0 - Production on 星期日 11月 21 13:32:34 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
修改oracle資料庫例項名
1.準備 原資料庫的例項名為linuxdb,控制檔案、資料檔案、聯機日誌檔案存放在/home/oracle/ora9/oradata/linuxdb目錄,將所有的檔案拷貝到另外一個目錄/home/oracle/ora9/oradata/dbtest。再將linuxdb 的初始
linux下刪除oracle資料庫例項
1、停止服務 首先用命令 lsnrctl stop 然後執行 sqlplus /nolog sql> conn / as sysdba sql> shutdown 2、檢視例項程序並刪除 find $OR
JDBC連線oracle資料庫的基本步驟
0、基礎: 建立java專案,匯入jdbc的jar包。 jdbc jar包下載傳送門:https://download.csdn.net/download/weixin_38569499/10431997 1、通過反射載入驅動類 程式碼: Class.forName
解決資料庫例項啟動ORA-00205問題
問題描述:ORA-00205: error in identifying control file, check alert log for more info 翻譯:控制檔案的錯誤,請檢查警報日誌中獲得更多資訊 實驗目的:為了做聯機熱備實驗,在原有的兩個控制檔案基礎上