Oracle數(shù)據(jù)庫(kù)堪稱是重量級(jí)的緣由
linux下啟動(dòng)Oracle服務(wù)和監(jiān)聽程序,Oracle數(shù)據(jù)庫(kù)堪稱是重量級(jí)的,它的管理十分復(fù)雜,將Oracle數(shù)據(jù)庫(kù)在linux平臺(tái)中的啟動(dòng)與關(guān)閉的實(shí)際操作步驟整理一下。安裝完畢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以上版本。
- $ su - Oracle
- $ sqlplus /nolog
- sql> conn / as sysdba
sql> startup (一般不需要加參數(shù),只要設(shè)置好環(huán)境變量)
sql> quit (退出sql模式)
$ lsnrctl start (啟動(dòng)監(jiān)聽器)關(guān)閉Oracle
$ lsnrctl stop(關(guān)閉監(jiān)聽器,在這之前,應(yīng)該先關(guān)閉應(yīng)用程序)
$ sqlplus /nolog
sql>shutdown 其參數(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ù)。
前三種方式不回丟失用戶數(shù)據(jù)。第四種在不的已的情況下,不建議采用!
經(jīng)常遇到的問(wèn)題:
1)權(quán)限問(wèn)題,解決方法,切換到Oracle用戶;
2)沒(méi)有關(guān)閉監(jiān)聽器 ,解決方法:關(guān)閉監(jiān)聽器
3)有Oracle實(shí)例沒(méi)有關(guān)閉,解決辦法:關(guān)閉Oracle實(shí)例
4)環(huán)境變量設(shè)置不全,解決辦法:修改環(huán)境變量
【編輯推薦】
- 對(duì)Oracle數(shù)據(jù)庫(kù)設(shè)計(jì)中字段的正確使用方案
- 訪問(wèn) Oracle 數(shù)據(jù)庫(kù)的實(shí)例描述
- Oracle數(shù)據(jù)庫(kù)的密集型實(shí)際應(yīng)用程序的開發(fā)
- 提高 Oracle JDBC的性能的辦法
- Oracle自動(dòng)編號(hào)列的創(chuàng)建