菜鳥學資料庫(六)——方便快捷的開啟、關閉Oracle服務

來源:互聯網
上載者:User

標籤:style   blog   http   os   java   使用   strong   檔案   ar   

背景:

作為一個程式員,在日常的工作中,我們電腦經常需要同時運行很多程式,如:Eclipse、瀏覽器、即時通訊軟體等,甚至經常需要開啟幾個Office文檔或者pdf文檔。這時候你的記憶體估計已經爆表了吧,尤其是現在想Chrome和FireFox這類的瀏覽器,隨便安裝幾個外掛程式,記憶體佔用就大得驚人。而我們為了滿足需要又不得不安裝各種各樣的外掛程式,因為這兩款瀏覽器在不安裝任何外掛程式的情況下跟IE沒什麼分別。


如所示,FireFox、Java的兩個進程還有Eclipse穩穩地佔據了記憶體使用量的前四,而這時候如果你電腦還開著Oracle的服務,那麼你的電腦會卡到令人髮指。

把電腦升級到8G記憶體,剛開始覺得很爽,沒過多長時間,又變得很慢了。還真是給它多少記憶體,它就敢給你用多少記憶體呀。無限制的升級硬體顯然是不實際的方法,所以我們需要從軟體上動腦筋,這句需要我們把平時不常用的服務以及後台進程關掉。

瀏覽器我們每天都離不開,而且關掉主程式也不會有後台進程,所以我們的目標不是它;Java進程和Eclipse每天開放也離不開它們,所以也不能對它們下黑手;嘿嘿,Oracle不好意思啦,只能將你幹掉了,因為有了Hibernate之類的架構,讓我們在寫代碼的時候不需要知道我們將要面向什麼資料庫。所以我們完全沒有必要在自己的機器上每天開著Oracle的那些笨重的後台服務。一個小小的MySQL完全可以應付,所以我們只需要將它的服務全部關掉,用的時候再開啟即可。

但是新的問題又來了,每次需要開啟服務的時候,還需要開啟系統的服務管理,找到Oracle的相關服務,然後挨個右擊點擊啟動,我想有過類似操作經驗的朋友,都會覺得這是一個非常令人煩躁的工作。

但是身為程式員的我們,應該很自然的想到,這些繁雜的工作肯定可以通過程式來自動幫我們解決。沒錯,而且非常簡單,只需要幾行代碼就可以搞定!


解決方案:

首先,到服務(按“Win”鍵,輸入“服務”,斷行符號)裡找到Oracle的相關服務,我安的是11g,相關服務如下:

我們並不需要將所有服務全部開啟,基本的功能只需要開啟如下兩個服務即可:

OracleServiceORCL
OracleOraDb11g_home1TNSListener


將以下代碼儲存成”.bat“檔案或”.cmd“檔案即可。

具體代碼:

@echo offnet start OracleServiceORCLnet start OracleOraDb11g_home1TNSListenerpause 

運行效果:


運行完成以後,可以看到兩個服務的狀態已經變成了“已啟動“:



停止服務代碼只需將“start”改成“stop”:

@echo offnet stop OracleServiceORCLnet stop OracleOraDb11g_home1TNSListenerpause 

運行效果:



好了,有了這兩段代碼Oracle的服務就對我們唯命是從了,招之則來,揮之則去。想想都覺得爽歪歪了。下面為大家附上Oracle各個服務的詳細說明:

1. Oracle ORCL VSS Writer Service:Oracle卷映射拷貝寫入服務,VSS(Volume Shadow Copy Service)能夠讓儲存基礎裝置(比如磁碟,陣列等)建立高保真的時間點映像,即映射拷貝(shadow copy)。它可以在多卷或者單個卷上建立映射拷貝,同時不會影響到系統的系統能。(非必須啟動)

2. OracleDBConsoleorcl:Oracle資料庫控制台服務,orcl是Oracle的執行個體標識,預設的執行個體為orcl。在運行Enterprise Manager(企業管理器OEM)的時候,需要啟動這個服務。(非必須啟動)

3. OracleJobSchedulerORCL:Oracle作業調度(定時器)服務,ORCL是Oracle執行個體標識。(非必須啟動)

4. OracleMTSRecoveryService:服務端控制。該服務允許資料庫充當一個微軟事務伺服器MTS、COM/COM+對象和分布式環境下的事務的資源管理員。(非必須啟動)

5. OracleOraDb11g_home1ClrAgent:Oracle資料庫.NET擴充服務的一部分。 (非必須啟動)

6. OracleOraDb11g_home1TNSListener:監聽器服務,服務只有在資料庫需要遠端存取的時候才需要。(非必須啟動,下面會有詳細詳解)。

7. OracleServiceORCL:資料庫服務(資料庫執行個體),是Oracle核心服務該服務,是資料庫啟動的基礎, 只有該服務啟動,Oracle資料庫才能正常啟動。(必須啟動)那麼在開發的時候到底需要啟動哪些服務呢?

對新手來說,要是只用Oracle內建的sql*plus的話,只要啟動OracleServiceORCL即可,要是使用PL/SQL Developer等第三方工具的話,OracleOraDb11g_home1TNSListener服務也要開啟。OracleDBConsoleorcl是進入基於WEB的EM必須開啟的,其餘服務很少用。

註:ORCL是資料庫執行個體名,預設的資料庫是ORCL,你可以建立其他的,即OracleService+資料庫名。


菜鳥學資料庫(六)——方便快捷的開啟、關閉Oracle服務

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.