linux平臺(tái)下啟動(dòng)Oracle數(shù)據(jù)庫(kù)的方法
不同的系統(tǒng)平臺(tái)下啟動(dòng)Oracle數(shù)據(jù)庫(kù)的方法也不盡相同,oracle數(shù)據(jù)庫(kù)是重量級(jí)的,其管理非常復(fù)雜,下面就將其在linux平臺(tái)上的啟動(dòng)Oracle數(shù)據(jù)庫(kù)步驟整理一下。
安裝完畢oracle以后,需要?jiǎng)?chuàng)建oracle系統(tǒng)用戶,并在/home/oracle下面的.bash_profile添加幾個(gè)環(huán)境變量:ORACLE_SID,ORACLE_BASE,ORACLE_HOME。比如:
export ORACLE_SID=test export ORACLE_BASE=oracle_install_dir export ORACLE_HOME=xxx
啟動(dòng)Oracle數(shù)據(jù)庫(kù)步驟:注意$代表shell命令提示符,這里的oracle是9.0以上版本。
$ su - oracle
$ sqlplus / nolog
sql> conn / as sysdba
sql> startup (一般不需要加參數(shù),只要設(shè)置好環(huán)境變量)
sql> quit (退出sql模式)
$ lsnrctl start (啟動(dòng)監(jiān)聽(tīng)器)關(guān)閉oracle
$ lsnrctl stop(關(guān)閉監(jiān)聽(tīng)器,在這之前,應(yīng)該先關(guān)閉應(yīng)用程序)
$ sqlplus /nolog
sql>shutdown 其參數(shù) :shutdown有四個(gè)參數(shù),四個(gè)參數(shù)的含義如下:
Normal 需要等待所有的用戶斷開(kāi)連接
Immediate 等待用戶完成當(dāng)前的語(yǔ)句
Transactional 等待用戶完成當(dāng)前的事務(wù)
Abort 不做任何等待,直接關(guān)閉數(shù)據(jù)庫(kù)
normal需要在所有連接用戶斷開(kāi)后才執(zhí)行關(guān)閉數(shù)據(jù)庫(kù)任務(wù),所以有的時(shí)候看起來(lái)好象命令沒(méi)有運(yùn)行一樣!在執(zhí)行這個(gè)命令后不允許新的連接
immediate在用戶執(zhí)行完正在執(zhí)行的語(yǔ)句后就斷開(kāi)用戶連接,并不允許新用戶連接。
transactional 在擁護(hù)執(zhí)行完當(dāng)前事物后斷開(kāi)連接,并不允許新的用戶連接數(shù)據(jù)庫(kù)。
abort 執(zhí)行強(qiáng)行斷開(kāi)連接并直接關(guān)閉數(shù)據(jù)庫(kù)。
前三種方式不回丟失用戶數(shù)據(jù)。第四種在不的已的情況下,不建議采用.
經(jīng)常遇到的問(wèn)題:
1)權(quán)限問(wèn)題,解決方法,切換到oracle用戶;
2)沒(méi)有關(guān)閉監(jiān)聽(tīng)器 ,解決方法:關(guān)閉監(jiān)聽(tīng)器
3)有oracle實(shí)例沒(méi)有關(guān)閉,解決辦法:關(guān)閉oracle實(shí)例
4)環(huán)境變量設(shè)置不全,解決辦法:修改環(huán)境變量
【編輯推薦】
Oracle存儲(chǔ)過(guò)程使用動(dòng)態(tài)SQL