如果想正常關(guān)閉,那么最好是:先手動(dòng)斷開所有數(shù)據(jù)庫連接(外部鏈接,比如訪問等),關(guān)閉監(jiān)聽(防止再次產(chǎn)生外部鏈接),然后殺掉所有正在執(zhí)行的數(shù)據(jù)庫進(jìn)程(數(shù)據(jù)庫內(nèi)部的一些,比如正在執(zhí)行的執(zhí)行計(jì)劃等,主進(jìn)程別殺?。缓箨P(guān)閉外圍服務(wù),最后再用immediate關(guān)閉數(shù)據(jù)庫。這樣能快一些,而且相對(duì)而言數(shù)據(jù)庫會(huì)正常,不會(huì)因?yàn)閿嚅_外部鏈接,等待進(jìn)程結(jié)束等問題等待時(shí)間超長。,當(dāng)然也只是快一些而已,如果數(shù)據(jù)庫很大,那么還是會(huì)很慢。
站在用戶的角度思考問題,與客戶深入溝通,找到三亞網(wǎng)站設(shè)計(jì)與三亞網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:做網(wǎng)站、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國際域名空間、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋三亞地區(qū)。
其他的shutdown abort,也是一個(gè)關(guān)閉數(shù)據(jù)庫的方法,不過oracle本身也不推薦,因?yàn)槊看蝍bort后數(shù)據(jù)庫可能會(huì)有這樣那樣的問題。
再baoli一些的,就是直接關(guān)機(jī)器,關(guān)電源了。
1. 在V$ACCESS視圖中找到要停止進(jìn)程的SID:
SELECT SID FROM V$ACCESS WHERE NAME='存儲(chǔ)過程名稱';
2. 在V$SESSION視圖中查找到查出SID和SERIAL#
SELECT SID,SERIAL#,FROM V$SESSION WHERE SID='剛才查到的SID'。
3.殺掉查找出來的進(jìn)程
alter system kill session 'SID,SERIAL#' immediate;
解釋:進(jìn)程都有唯一的進(jìn)程id(SID)和序列號(hào)(SERIAL#),之后通過kill命令即可強(qiáng)制停止進(jìn)程。
在服務(wù)中關(guān)閉:
OracleOracle_homeTNSListener 對(duì)應(yīng)于數(shù)據(jù)庫的監(jiān)聽程序
OracleServiceSID 對(duì)應(yīng)于數(shù)據(jù)庫的例程
OracleDBConsoleSID 對(duì)應(yīng)于Oracle Enterprise Manager(OEM)
其中,Oracle_home表示Oracle主目錄,如Oracle11g_home1;SID表示Oracle系統(tǒng)標(biāo)識(shí)符,如OracleServiceMAG01的MAG01。
比較好的啟動(dòng)順序是:OracleOracle_homeTNSListener,OracleServiceSID,OracleDBConsoleSID。
關(guān)閉時(shí)次序相反。
下面給出了自己寫的已經(jīng)排好順序的啟動(dòng)和停止服務(wù)的兩個(gè)批處理文件:
//啟動(dòng)Oracle
Start Oracle.bat
@echo off
echo 確定要啟動(dòng)Oracle 11g服務(wù)嗎?
pause
net start OracleOraDb11g_home1TNSListener
net start OracleServiceMAG01
net start OracleDBConsolemag01
echo 啟動(dòng)Oracle 11g服務(wù)完成,請(qǐng)確認(rèn)有沒有錯(cuò)誤發(fā)生。
Pause
//關(guān)閉Oracle
Stop Oracle.bat
@echo off
echo 確定要停止Oracle 11g 服務(wù)嗎?
pause
net stop OracleDBConsolemag01
net stop OracleServiceMAG01
net stop OracleOraDb11g_home1TNSListener
echo 停止Oracle 11g服務(wù)完成,請(qǐng)確認(rèn)有沒有錯(cuò)誤發(fā)生。
Pause
select * from v$access a where object like '存儲(chǔ)過程名%' --存儲(chǔ)過程名為大寫字母
select * from v$session where sid=74 --74為上一個(gè)查詢得到的SID值,可能是多個(gè),這里找到他們對(duì)應(yīng)的serial#值
alter system kill session '74,118' --參數(shù)為'sid,serial#',用于停止這個(gè)回話,同時(shí)也終止了存儲(chǔ)過程
分享題目:oracle怎么關(guān)存儲(chǔ),oracle怎么保存
本文網(wǎng)址:http://www.rwnh.cn/article16/dsdjcgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、動(dòng)態(tài)網(wǎng)站、軟件開發(fā)、、微信公眾號(hào)、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)