<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-314  評論-209  文章-0  trackbacks-0

    WINDOWS是很脆弱的系統,可能裝完沒幾天就會崩潰,如果你在WINDOWS下裝有oracle,那怎么來恢復這個數據庫呢?


    一種方法是重裝數據庫后用IMP來導入原來的數據,但使用這種方法的前提是你有以前數據的備份,并且這種方法還有許多不足的地方,如備份過舊,可能會丟失許多數據、導入數據太長等。


    一般情況下我們可以采用重用原來的數據庫的方法來恢復。在講步驟前先說說這種方法的原理。

    數據庫與實例對應,當數據庫服務啟動后,我們可以用SQLPLUS "/AS SYSDBA"方法連接到一個空閑的例程,當執行startup啟動數據庫時,首先會在%ORACLE_HOME%/database下找當前SID對應的參數文件(PFILE或者SPFILE)和密碼文件,然后啟動例程;接著根據參數文件記錄的信息找到控制文件,讀取控制文件的信息,這就是mount數據庫了;最終根據控制文件的信息打開數據庫。這個過程相當于對數據庫著了一次冷備份的恢復。

    下面的具體步驟:(我們假設原庫的所有相關文件都存在)
    1、安裝數據庫軟件
    只需安裝同版本的數據庫軟件即可,不需要創建數據庫。最好安裝在和原來數據庫同樣的%ORACLE_HOME%下,省得還要修改參數文件路徑等。(直接覆蓋原來的oracle即可)
    再次強調,只安裝軟件,不創建數據庫,否則將數據庫軟件安裝在同樣的目錄下舊的部分數據文件會被覆蓋,這樣數據庫也不能被恢復了。

    2、新建一個實例
    在cmd窗口執行
    oradim -new -sid oracle9i
    注意,這個SID名稱最好與你以前的SID一樣,否則在啟動的數據需要指明pfile,并且需要重建密碼文件,比較麻煩。(當然,如果你就不想用原來的SID也可以,把參數文件、密碼文件的名稱都改成與新SID對應的名稱)。

    3、啟動數據庫
    做完以上兩步,就可以啟動數據庫了。
    用net start 檢查oracle服務是否已經啟動,如果oracle服務沒有啟動,則在cmd下運行如下命令:
    net start oracleserviceoracle9i
    然后設定必要的環境變量,在cmd窗口運行
    set ORACLE_SID=oracle9i

    接著連接數據庫
    sqlplus "/as sysdba"
    startup

    如果正常的話,數據庫應該就能起來了

    4、啟動監聽
    lsnrctl start

    5、后續工作
    經過以上幾步后,基本上就可以使用oracle了,但是使用起來有點不方便,如每次在cmd中啟動數據庫都需要先SET ORACLE_SID、在本機連接數據庫也都需要加上@TNSNAME等。我們可以修改注冊表,添加ORACLE_SID的信息,避免這些麻煩。

    在注冊表的HKEY_LOCAL_MACHINESOFTWAREORACLE下新建字符串值,名稱為ORACLE_SID,值為oracle9i。
    也可以將以下內容保持成一個后綴名為reg的文件(文件名隨便起),然后雙擊,即可將信息導入到注冊表中。

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINESOFTWAREORACLE]
    "ORACLE_SID"="oracle9i"


    注意,以上步驟都是在%ORACLE_HOME%、%ORACLE_SID%都與原庫一樣的情況下討論的,雖然%ORACLE_HOME%和%ORACLE_SID%可以與原庫不一樣,但為了減少麻煩和出錯的幾率,建議不要改變則兩個值。

    posted on 2011-07-17 13:45 xzc 閱讀(570) 評論(1)  編輯  收藏 所屬分類: Oracle

    評論:
    # re: 談談WINDOWS下重裝系統后oracle的恢復 2011-07-17 14:42 | xzc
    (1)把舊的“E:\oracle”改名為“E:\oracle_old”
    (2)重裝oralce在“E:\oracle”目錄下.
    (3)oradim -new -sid orcl
    (4)把新的“E:\oracle”改名為“E:\oracle_new”
    (5)把舊的“E:\oracle_old”改為“E:\oracle”
    (6)sqlplus "/as sysdba"
    startup
    (7)用Net Configuration Assistant 重建一下監聽.
    (8)導入注冊表
    [HKEY_LOCAL_MACHINESOFTWAREORACLE]
    "ORACLE_SID"="oracle9i"

    --下次正常啟動----
    正常啟動.bat
    net start OracleOraDb10g_home1TNSListener
    net start OracleServiceORCL
    sqlplus / as sysdba
    startup

    正常關閉.bat
    net stop OracleServiceORCL
    net stop OracleOraDb10g_home1TNSListener





      回復  更多評論
      
    主站蜘蛛池模板: 全部免费毛片在线| 久久精品国产亚洲av麻豆小说| 亚洲成人影院在线观看| 亚洲精品无码人妻无码| 免费看少妇作爱视频| 亚洲av无码不卡一区二区三区| 最新亚洲精品国偷自产在线| 国产做国产爱免费视频| 亚洲人色婷婷成人网站在线观看| 国产日韩精品无码区免费专区国产| 久久精品国产亚洲7777| a级特黄毛片免费观看| 亚洲AV天天做在线观看| 亚洲天堂免费在线视频| 国产亚洲人成网站观看| 亚洲heyzo专区无码综合| 免费看污成人午夜网站| 亚洲熟妇AV日韩熟妇在线| 永久在线免费观看| 国产亚洲人成网站观看| 日本片免费观看一区二区| 亚洲免费福利在线视频| 亚洲精品黄色视频在线观看免费资源| 免费无码H肉动漫在线观看麻豆| 99ri精品国产亚洲| 日韩高清在线免费观看| 三级黄色片免费看| 亚洲av永久综合在线观看尤物| 无码日韩精品一区二区免费暖暖 | 亚洲五月午夜免费在线视频| 久久精品国产亚洲AV麻豆~| 国产成人免费高清激情视频| 亚洲ts人妖网站| 亚洲国产成人爱av在线播放| 无码成A毛片免费| 亚洲av中文无码乱人伦在线观看 | 在线观看免费精品国产| 中文字幕看片在线a免费| 亚洲日本乱码一区二区在线二产线 | 中文字幕无码不卡免费视频| 亚洲天堂中文资源|