Linux下啟動Oracle服務和監聽程序


注:如果讀者是出現監聽無法啟動 請參閱本人實錄解決辦法:http://blog.csdn.net/johnstrive/archive/2009/08/06/4418481.aspx

 

Oracle數據庫是重量級的,其管理非常復雜,將其在Linux平台上的啟動和關閉步驟整理一下。

安裝完畢oracle以后,需要創建oracle系統用戶,並在/home/oracle下面的.bash_profile添加幾個環境變量:ORACLE_SID,ORACLE_BASE,ORACLE_HOME。比如:

export ORACLE_SID=test  export ORACLE_BASE=oracle_install_dir export ORACLE_HOME=xxx

啟動步驟:注意$代表shell命令提示符,這里的oracle是9.0以上版本。

$ su – oracle 
$ sqlplus / nolog 
sql> conn / as sysdba 
sql> startup (一般不需要加參數,只要設置好環境變量) 
sql> quit (退出sql模式) 
$ lsnrctl start (啟動監聽器)關閉oracle 
$ lsnrctl stop(關閉監聽器,在這之前,應該先關閉應用程序) 
$ sqlplus  /nolog 
sql>shutdown 其參數 :shutdown有四個參數,四個參數的含義如下:
Normal 需要等待所有的用戶斷開連接
Immediate 等待用戶完成當前的語句
Transactional 等待用戶完成當前的事務
Abort 不做任何等待,直接關閉數據庫
normal需要在所有連接用戶斷開后才執行關閉數據庫任務,所以有的時候看起來好象命令沒有運行一樣!在執行這個命令后不允許新的連接
immediate在用戶執行完正在執行的語句后就斷開用戶連接,並不允許新用戶連接。
transactional 在擁護執行完當前事物后斷開連接,並不允許新的用戶連接數據庫。
abort 執行強行斷開連接並直接關閉數據庫。
前三種方式不回丟失用戶數據。第四種在不的已的情況下,不建議采用! 
經常遇到的問題:

1)權限問題,解決方法,切換到oracle用戶;

2)沒有關閉監聽器 ,解決方法:關閉監聽器

3)有oracle實例沒有關閉,解決辦法:關閉oracle實例

4)環境變量設置不全,解決辦法:修改環境變量

Oracle數據庫的啟動和關閉方式小結

Oracle數據庫的啟動和關閉方式

一、幾種啟動方式:

1、startup nomount
非安裝啟動,這種方式啟動下可執行:重建控制文件、重建數據庫
啟動instance,即啟動SGA和后台進程,這種啟動只需要init.ora文件。
2、startup mount dbname
安裝啟動,這種方式啟動下可執行:數據庫日志歸檔、數據庫恢復、重新命名一些數據庫文件
如:系統表空間或日志文件。
執行“nomount”,然后打開控制文件
3、startup open dbname
先執行“nomount”,然后執行“mount”,再打開包括Redo log文件在內的所有數據庫文件,
這種方式下可訪問數據庫中的數據。
4、startup,等於以下三個命令
startup nomount
alter database mount
alter database open
5、startup restrict
約束方式啟動
這種方式能夠啟動數據庫,但只允許具有一定特權的用戶訪問
非特權用戶訪問時,會出現以下提示:
ERROR:
ORA-01035: ORACLE 只允許具有 RESTRICTED SESSION 權限的用戶使用
6、startup force
強制啟動方式
當不能關閉數據庫時,可以用startup force來完成數據庫的關閉
先關閉數據庫,再執行正常啟動數據庫命令
7、startup pfile=參數文件名
帶初始化參數文件的啟動方式
先讀取參數文件,再按參數文件中的設置啟動數據庫
例:startup pfile=E:/Oracle/admin/oradb/pfile/init.ora
8、startup EXCLUSIVE

二、幾種關閉方式:

1、shutdown normal
正常方式關閉數據庫。
2、shutdown immediate
立即方式關閉數據庫。
在SVRMGRL中執行shutdown immediate,數據庫並不立即關閉,
而是在Oracle執行某些清除工作后才關閉(終止會話、釋放會話資源),
當使用shutdown不能關閉數據庫時,shutdown immediate可以完成數據庫關閉的操作。
3、shutdown abort
直接關閉數據庫,正在訪問數據庫的會話會被突然終止,
如果數據庫中有大量操作正在執行,這時執行shutdown abort后,重新啟動數據庫需要很長時間。

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=13483


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM