有沒有感覺到,自從裝上oracle之後,電腦變卡了?卡是正常的,oracle作為大型資料庫軟體,執行起來是非常吃記憶體的。
所以對於自用的電腦來說,不使用oracle的時候,應該把oracle的一系列服務關掉。你可以把oracle的服務設定為手動開啟,但是這樣的話就需要你乙個乙個去開啟服務,關閉服務,很麻煩。
我們可以有更簡便都方法:寫個指令碼檔案,把開啟/關閉服務都命令寫入指令碼,執行指令碼檔案就可以。
在寫指令碼檔案之前,我們先來看一下哪些oracle服務是必須開啟的,成功安裝oracle 11g後,共有7個服務。
這七個服務的含義分別為:
oracle orcl vss writer service:
oracle卷對映拷貝寫入服務,vss(volume shadow copy service)能夠讓儲存基礎裝置(比如磁碟,陣列等)建立高保真的時間點映像,即對映拷貝(shadow copy)。它可以在多卷或者單個卷上建立對映拷貝,同時不會影響到系統的系統能。(非必須啟動)
oracledbconsoleorcl:oracle資料庫控制台服務,orcl是oracle的例項標識,預設的例項為orcl。在執行enterprise manager(企業管理器oem)的時候,需要啟動這個服務。(非必須啟動)
oraclejobschedulerorcl:
oracle作業排程(定時器)服務,orcl是oracle例項標識。(非必須啟動)
oraclemtsrecoveryservice:
服務端控制。該服務允許資料庫充當乙個微軟事務伺服器mts、com/com+物件和分布式環境下的事務的資源管理器。(非必須啟動)
oracleoradb11g_home1clragent:oracle資料庫
.net擴充套件服務的一部分。 (非必須啟動)
oracleoradb11g_home1tnslistener:
***服務,服務只有在資料庫需要遠端訪問的時候才需要。(非必須啟動,下面會有詳細詳解)。
oracleserviceorcl:
資料庫服務(資料庫例項),是oracle核心服務該服務,是資料庫啟動的基礎, 只有該服務啟動,oracle資料庫才能正常啟動。(必須啟動)
如果只是用oracle自帶的sql*plus的話,只要啟動oracleserviceorcl即可,要是使用pl/sql developer等第三方工具的話,oracleoradb11g_home1tnslistener服務也要開啟。oracledbconsoleorcl是進入基於web的em必須開啟的,其餘服務很少用。
注:orcl是資料庫例項名,預設的資料庫是orcl,你可以建立其他的,即oracleservice+資料庫名。
所以咱們平常學習使用的話,只需要開啟oracleoradb11g_home1tnslistener服務和oracleserviceorcl即可,其他五個服務可選擇禁用掉。
下面來為剩下兩個服務編寫個指令碼:
@echo off
title oracle服務管理
clscolor 2f
goto menu
:menu
clsecho. =-=-=-=-=oracle服務管理=-=-=-=-=
echo.
echo. 1 開啟服務
echo.
echo. 2 關閉服務
echo.
echo. 3 退 出
echo.
echo. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
echo. 請輸入選擇專案的序號:
set /p id=
if "%id%"=="1" goto cmd1
if "%id%"=="2" goto cmd2
if "%id%"=="3" exit
echo 請輸入正確序號!&ping -n 2
127.1>nul&goto menu
:cmd1
echo.
echo 開啟oracle服務中...
net start|findstr /i /c:"oracleoradb11g_home1tnslistener">nul&&set k=1||set k=0
if%k%==0 (net start oracleoradb11g_home1tnslistener)
net start|findstr /i /c:"oracleserviceorcl">nul&&set k=1||set k=0
if%k%==0 (net start oracleserviceorcl)
echo.
echo oracle服務已經成功開啟...
echo.
pause
exit
:cmd2
echo.
echo 關閉oracle服務中...
net start|findstr /i /c:"oracleoradb11g_home1tnslistener">nul&&set k=1||set k=0
if%k%==1 (net stop oracleoradb11g_home1tnslistener)
net start|findstr /i /c:"oracleserviceorcl">nul&&set k=1||set k=0
if%k%==1 (net stop oracleserviceorcl)
echo.
echo oracle服務已經成功關閉...
echo.
pause
exit
將文字儲存到.txt檔案中,隨後重新命名為.bat即可
執行測試(以管理員身份執行該指令碼):
右擊我們的檔案以
管理員的身份進行執行,
這樣就可以了
① 輸入 1 回車即可開啟服務:
cmd —>services.msc,檢視服務是否開啟。
②輸入 2 回車即可關閉服務:
cmd —>services.msc,檢視服務是否關閉。
可以看到指令碼起作用了,以後我們不使用oracle服務的時候執行指令碼一鍵就可以關閉這些佔資源的服務,想用都時候也可以一鍵開啟服務,很方便。
希望能夠幫到大家。
一鍵啟動和關閉oracle服務
在沒有使用本地oracle資料庫時,開著oracle服務很佔電腦資源,差一點的機子就會很卡。因此為了解決這個問題,寫了乙個批處理檔案,可以根據需要快捷開啟和關閉oracle服務。我使用的是oracle11,如果版本不同可以把listener名字改下就好 echo off echo oracle服務 ...
C 一鍵關閉啟動服務,一鍵禁用服務
登錄檔操作 public class gf regreadwrite catch 設定路徑為keypath,鍵名為keyname的登錄檔鍵值為keyval static public bool setregval registrykey rootkey,string keypath,string k...
shell一鍵啟動與關閉
首先在home目錄下建立乙個shell指令碼目錄檔案mkdir shell file,然後進入到shell file目錄下建立乙個啟動指令碼touch start.sh,然後vi start.sh 進入編輯頁面,在第一行插入 bin bash儲存退出 關閉之前mysql的所有程序pkill mysq...