oracle數(shù)據(jù)庫(kù)是重量級(jí)的,其管理非常復(fù)雜,將其在linux平臺(tái)上的啟動(dòng)和關(guān)閉步驟整理一下。
安裝完畢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)步驟:注意$代表shell命令提示符,這里的oracle是9.0以上版本。
切換到oracle用戶下面:
$ su - oracle
$ sqlplus / nolog
sql> conn / as sysdba
sql> startup (啟動(dòng)數(shù)據(jù)庫(kù),一般不需要加參數(shù),只要設(shè)置好環(huán)境變量)
sql>shutdown (關(guān)閉數(shù)據(jù)庫(kù)其參數(shù) :shutdown有四個(gè)參數(shù),四個(gè)參數(shù)的含義如下:
Normal 需要等待所有的用戶斷開連接
Immediate 等待用戶完成當(dāng)前的語(yǔ)句
Transactional 等待用戶完成當(dāng)前的事務(wù)
Abort 不做任何等待,直接關(guān)閉數(shù)據(jù)庫(kù)
normal需要在所有連接用戶斷開后才執(zhí)行關(guān)閉數(shù)據(jù)庫(kù)任務(wù),所以有的時(shí)候看起來(lái)好象命令沒(méi)有運(yùn)行一樣!在執(zhí)行這個(gè)命令后不允許新的連接
immediate在用戶執(zhí)行完正在執(zhí)行的語(yǔ)句后就斷開用戶連接,并不允許新用戶連接。
transactional 在擁護(hù)執(zhí)行完當(dāng)前事物后斷開連接,并不允許新的用戶連接數(shù)據(jù)庫(kù)。
abort 執(zhí)行強(qiáng)行斷開連接并直接關(guān)閉數(shù)據(jù)庫(kù)。
sql> quit (退出sql模式)
啟動(dòng)監(jiān)聽(tīng)器:
$ su - oracle
然后切換到$oracle_home/bin下面,執(zhí)行下面命令
$lsnrctl start (啟動(dòng)監(jiān)聽(tīng)器)
$lsnrctl status (查看監(jiān)聽(tīng)器啟動(dòng)狀態(tài))
$lsnrctl stop(關(guān)閉監(jiān)聽(tīng)器)
經(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)境變量