程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> 關於Oracle數據庫 >> 以最短的宕機時間升級到Oracle 10g的方法

以最短的宕機時間升級到Oracle 10g的方法

編輯:關於Oracle數據庫

      升級硬件通常都很容易,但是升級數據庫……毫無疑問,每個人都有著痛苦的經歷。一個經驗豐富的Oracle DBA主要關注的是升級的成功完成和可能導致的宕機時間。成功不僅僅是指升級過程本身正常完成,更重要的是,生產應用程序能在升級後的數據庫中無故障地運行。本文中,我們將提供一些建議,通過采用成熟的流程和技術將宕機時間和失敗風險降到最低。

      10g" href="http://oracle.chinaitlab.com/UploadFiles_7269/200705/20070504135659835.rar">以最短的宕機時間升級到Oracle 10g

      選 中窗口右側欄下拉選項中的“數據庫服務”,點擊添加數據庫按鈕。在出現的數據庫欄中輸入全局數據庫名,如myoracle。注意這裡的全局數據庫名與數據 庫SID有所區別,全局數據庫名實際通過域名來控制在同一網段內數據庫全局命名的唯一性,就如Windows下的域名控制器,如這裡可以輸入 myoracle.192.168.1.5。Oracle主目錄可以不填寫,輸入SID,如myoracle。

      保 存以上配置,默認即可在Oracle安裝目錄下找到監聽配置文件 (Windows下如D:oracleora92networkadminlistener.ora,Linux/Unix下$ ORACLE_HOME/network/admin/listerer.ora)。至此,Oracle服務端監聽器配置已經完成。 2、 本地服務名配置(Tnsnames)  本 地服務名是基於Oracle客戶端的網絡配置,所以,如果客戶端需要連接數據庫服務器進行操作,則需要配置該客戶端,其依附對象可以是任意一台欲連接數據 庫服務器進行操作的PC機,也可以是數據庫服務器自身。如前面所介紹,可以利用Oracle自帶的圖形化管理工具Net Manager來完成Oracle客戶端的配置。選中如圖(一)中的服務命名,再點擊左上側“+”按鈕,彈出如下圖示對話框:

    以最短的宕機時間升級到Oracle 10g的方法   三聯教程

    圖(四)   輸入Net服務名,如myoracle,點擊下一步,進入下圖示對話框:

    圖(五)

      選中TCP/IP(Internet協議),點擊下一步,如下圖示:

    圖(六)   輸入主機名與端口號。注意這裡的主機名與端口號必須與數據庫服務器端監聽器配置的主機名和端口號相同。點擊下一步,如下圖示:

    圖(七)   選 中(Oracle8i或更高版本)服務名,輸入服務名。這裡的服務名實際上就是數據庫服務器端監聽器配置中的全局數據庫名,前者與後者必須相同。連接類型 通常選專用服務器,這要視數據庫服務器的配置而定,如果配置的共享數據庫服務器,這裡的連接類型就要選共享服務器,否則建議選專用服務器(關於專用服務器 的介紹請參閱相關文檔)。配置好後點擊下一步

      如 果數據庫服務器端相關服務啟動了,可以點擊測試按鈕進行連接測試。Oracle默認是通過scott/tiger用戶進行測試連接,由於scott用戶是 Oracle自帶的示例用戶,對於正式的業務數據庫或專業測試數據庫可能沒有配置這個用戶,所以需要更改成有效的用戶登錄才可能測試成功。如果這裡測試連 接不成功,也不要緊,先點完成按鈕結束配置。  回 到Oracle網絡管理器(Oracle Net Manager)主窗口,保存配置,默認即可在Oracle安裝目錄下找到本地服務名配置文件 (Windows下如D:oracleora92networkadmintnsnames.ora,Linux/Unix下$ ORACLE_HOME/network/admin/ tnsnames.ora)。   樹形目錄下的服務命名可以通過編輯菜單裡的重命名菜單更改成任意合法字符組成的服務名稱,注意服務名稱前不能有空格字符,否則可能無法連接數據庫服務器。 3、 連接數據庫服務器(1) 啟動服務器端監聽器與數據庫服務Linux/Unix下,啟動監聽器:$ lsnrctl start 關閉監聽器:$ lsnrctl stop查看監聽狀態:$ lsnrctl status啟動數據庫:$ sqlplus /nologSQL>conn sys@myoracle as sysdba --這裡的myoracle是前面配置的客戶端本地服務名或SQL>conn / as sysdbaSQL>startupWindows下,啟動監聽器:C:lsnrctl start啟動Oracle實例服務:C:oradim –startup –sid myoracle 關閉Oracle實例服務:C:oradim –shutdown –sid myoracle  以上服務必須同時啟動,客戶端才能連接數據庫。由於默認配置的監聽器名稱是Listener,上述命令可以正常啟動監聽器,如果監聽器名稱是其它名稱,如aListener,則需要用下列方式才能啟動:Linux/Unix下:$ lsnrctl start aListenerWindows下:C:lsnrctl start aListener (2) 測試連接數據庫服務器  測試的方法多種多樣,可以在上面配置本地服務名時進行測試,也可以是第三方客戶端工具,如PL/SQL Developer,最方便的是用Oracle自帶的sqlplus工具,以下利用sqlplus進行測試:C:sqlplus /nologSQL>conn zgh@myoracle已連接。

      四、客戶端連接服務器端常見問題排除方法  要排除客戶端與服務器端的連接問題,首先檢查客戶端配置是否正確(客戶端配置必須與數據庫服務器端監聽配置一致),再根據錯誤提示解決。下面列出幾種常見的連接問題:1、 ORA-12541: TNS: 沒有監聽器顯而易見,服務器端的監聽器沒有啟動,另外檢查客戶端IP地址或端口填寫是否正確。啟動監聽器:$ lsnrctl start或C:lsnrctl start2、 ORA-12500: TNS: 監聽程序無法啟動專用服務器進程對於Windows而言,沒有啟動Oracle實例服務。啟動實例服務:C:oradim –startup -sid myoracle3、 ORA-12535: TNS: 操作超時  出現這個問題的原因很多,但主要跟網絡有關。解決這個問題,首先檢查客戶端與服務端的網絡是否暢通,如果網絡連通,則檢查兩端的防火牆是否阻擋了連接。4、 ORA-12154: TNS: 無法處理服務名  檢 查輸入的服務名與配置的服務名是否一致。另外注意生成的本地服務名文件(Windows下如D:oracleora92networkadmin tnsnames.ora,Linux/Unix下$ORACLE_HOME/network/admin/tnsnames.ora)裡每項服務的首 行服務名稱前不能有空格。5、 ORA-12514: TNS: 監聽進程不能解析在連接描述符中給出的 SERVICE_NAME  打開Net Manager,選中服務名稱,檢查服務標識欄裡的服務名輸入是否正確。該服務名必須與服務器端監聽器配置的全局數據庫名一致。6、 Windows下啟動監聽服務提示找不到路徑  用 命令或在服務窗口中啟動監聽提示找不到路徑,或監聽服務啟動異常。打開注冊表,進入HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/OracleOraHome92TNSListener項,查看ImagePath字符串項是否存在,如果沒 有,設定值為D:oracleora92BINTNSLSNR,不同的安裝路徑設定值做相應的更改。這種方法同樣適用於Oracle實例服務,同 上,找到如同HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/Oracle ServiceMYORACLE項,查看ImagePath字符串項是否存在,如果沒有,則新建,設定值為d:oracleora92 binORACLE.EXE MYORACLE。以上是Oracle客戶端連接服務器端常見的一些問題,當然不能囊括所有的連接異常。解決問題的關鍵在於方法與思路,而不是每種問題都有固定的答案

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved