国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

Oracle數(shù)據(jù)庫整機(jī)移植技術(shù)

2024-08-29 13:38:14
字體:
供稿:網(wǎng)友

  1. 本文測(cè)試環(huán)境:
  
  硬件環(huán)境:兩臺(tái)PC電腦,一臺(tái)機(jī)器名為A機(jī),另一臺(tái)機(jī)器名為B機(jī);
  
  操作系統(tǒng)(OS):均為Window2000 advance server;
  
  Oracle RDBMS:均為Oracle 9.2.0.1;
  
  數(shù)據(jù)庫sid:要求A機(jī)與B機(jī)均為testdb.
  
  2. 測(cè)試目的:
  
  將A機(jī)現(xiàn)有數(shù)據(jù)庫系統(tǒng)快速移植到B機(jī)。
  
  3. 測(cè)試要求:
  
  硬件配置最好一致,假如A機(jī)與B機(jī)硬件配置不一致,最需要修改的地方是內(nèi)存配置,其原則是數(shù)據(jù)庫的總內(nèi)存配置要小于物理內(nèi)存;除此之外,對(duì)于CPU數(shù)量不一樣的情況,在只要求可恢復(fù)性的前提條件下,可以不做其它修改。
  
  操作系統(tǒng)配置(OS):版本要求一致;對(duì)于B機(jī)上的硬盤邏輯分區(qū)至少要求物理文件存放置與A機(jī)對(duì)應(yīng)的同一個(gè)盤區(qū),如://A/D:/oracle/oradata/testdb/,//B/D:/oracle/oradata/testdb/,
  
  Oracle軟件的安裝位置($ORACLE_HOME)可以不一致,如//A/G:/oracle/ora92/,//B/D:/oracle/ora92/.
  
  Oracle RDBMS配置:要求版本必須一致,否則在B機(jī)上假如出現(xiàn)版本不兼容的問題將很難解決,例如查看A機(jī)上現(xiàn)在數(shù)據(jù)庫的版本為v9.2.0.1:
  
  SQL>conn sys@myoracle as sysdba;
  
  SQL> select * from v$version;
  
  BANNER
  
  Oracle9i EnterPRise Edition Release 9.2.0.1.0 - ProdUCtion
  
  PL/SQL Release 9.2.0.1.0 - Production
  
  CORE    9.2.0.1.0    Production
  
  TNS for 32-bit Windows: Version 9.2.0.1.0 - Production
  
  NLSRTL Version 9.2.0.1.0 – Production
  
  所以要求B機(jī)上也要安裝Oracle v9.2.0.1版本的數(shù)據(jù)庫軟件。
  
  4. 測(cè)試步驟:
  
  1、在B機(jī)上作如下操作(為了盡量減少操作時(shí)間,最好在B機(jī)上將所有的預(yù)備工作都做好):
  
  (1) 安裝Oracle軟件,但可以不用創(chuàng)建數(shù)據(jù)庫;
  
  (2) 創(chuàng)建與A機(jī)上物理文件所在目錄相同的文件夾,通俗點(diǎn)講就是文件克隆(Clone file),例如:c:/>mkdir d:/oracle/oradata/testdb;
  
  (3) 配置監(jiān)聽服務(wù),需要關(guān)心的文件主要有兩個(gè),分別是$ORACLE/network/admin/下的listener.ora、tnsnames.ora,Oracle連接時(shí)需要讀這兩個(gè)文件和sqlnet.ora文件。配置時(shí)最好采用“開始—>程序(P)—> Oracle - OraHome92—> Configuration and
  
  Migration Tools—> Net Manager“在圖形界面下進(jìn)行配置,這同時(shí)可以生成上述的listener.ora、tnsnames.ora兩個(gè)文件,而且可以保證配置的準(zhǔn)確性;另外一種方法是直接從A機(jī)上的$ORACLE/network/admin/目錄直接copy這兩個(gè)文件至B機(jī)上的$ORACLE/network/admin/目錄,需要修改這兩個(gè)文件如下標(biāo)示:
  
  A、 對(duì)于listener.ora文件:
  
  # LISTENER.ORA Network Configuration File:
  
  # F:/oracle/ora92/NETWORK/ADMIN/listener.ora
  
  # Generated by Oracle configuration tools.
  
  LISTENER =
  
  (DESCRipTION =
  
  (ADDRESS = (PROTOCOL = TCP)(HOST = B)(PORT = 1521))
  
  )
  
  SID_LIST_LISTENER =
  
  (SID_LIST =
  
  (SID_DESC =
  
  (GLOBAL_DBNAME = testdb.B)
  
  (SID_NAME = testdb)
  
  )
  
  )
  
  B、 對(duì)于tnsnames.ora文件:
  
  # TNSNAMES.ORA Network Configuration File:
  
  # F:/oracle/ora92/NETWORK/ADMIN/tnsnames.ora
  
  # Generated by Oracle configuration tools.
  
  MYORACLE =
  
  (DESCRIPTION =
  
  (ADDRESS_LIST =
  
  (ADDRESS = (PROTOCOL = TCP)(HOST = B)(PORT = 1521))
  
  )
  
  (CONNECT_DATA =
  
  (SERVER = DEDICATED)
  
  (SERVICE_NAME = testdb.B)
  
  )
  
  )
  
  以上紅色標(biāo)記的地方表示需要改動(dòng),其實(shí)只將文件里的A主機(jī)名改成B主機(jī)名或者將A主機(jī)IP改成B主機(jī)IP就可以了。

  
  (4)  創(chuàng)建實(shí)例服務(wù),由于前面只安裝了數(shù)據(jù)庫軟件,所以這時(shí)實(shí)例服務(wù)名還不存在,現(xiàn)在創(chuàng)建它(對(duì)于linux或Unix系統(tǒng),就沒有此步驟了):
  
  c:/>oradim –NEW –SID testdb
  
  這里直接將實(shí)例服務(wù)名創(chuàng)建成與A機(jī)上sid同名,為了保證下面的過程順利進(jìn)行,推薦按前述方法創(chuàng)建。
  
  2、 復(fù)制A機(jī)上的數(shù)據(jù)庫物理文件。
  
  關(guān)閉A機(jī)數(shù)據(jù)庫,對(duì)于已崩潰的系統(tǒng),當(dāng)然就沒有關(guān)閉數(shù)據(jù)庫這一步驟了:
  
  SQL>conn sys@myoracle as sysdba
  
  SQL>shutdown immediate
  
  SQL>create pfile from spfile;
  
  通過網(wǎng)絡(luò)或移動(dòng)存儲(chǔ)設(shè)備將A機(jī)上的物理文件:包括所有數(shù)據(jù)文件,重做日志文件,歸檔日
  
  志文件,控制文件,密碼文件和剛才創(chuàng)建的初始化參數(shù)文件inittestdb.ORA,copy至B機(jī)上相對(duì)應(yīng)的與A機(jī)同名的目錄。例如:
  
  copy A/D:/oracle/oradata/testdb/*.* B/D:/oracle/oradata/testdb
  copy A/ F:/oracle/admin/*.* B/E:/oracle/admin/ ——這是日志文件目錄
  
  copy A/ F:/oracle/ora92/network/admin/*.ORA B/ E:/oracle/ora92/network/admin/  (假如前面已經(jīng)配置好了監(jiān)聽,此步略過)
  
  copy A/ F:/oracle/ora92/database/*.ORA B/ E:/oracle/ora92/database
  這里只是舉例示范,實(shí)意是為了便于理解,但必須要經(jīng)過上面的copy步驟。注重上面
  
  復(fù)制的文件包括警報(bào)日志文件目錄,也可以直接在B機(jī)上手工創(chuàng)建文件目錄,當(dāng)啟動(dòng)Oracle時(shí),Oracle會(huì)根據(jù)初始化參數(shù)里指定的目錄自動(dòng)創(chuàng)建警報(bào)日志文件。
  
  修改從A機(jī)上copy過來的D:/oracle/ora92/database/inittestdb.ORA文件,將*.db_domain='A'修改為*.db_domain='B'就可以了。假如物理文件的位置在B機(jī)上發(fā)生了改變,則需要修改這個(gè)文件里相應(yīng)的參數(shù),但建議不要作任何改動(dòng),以減少操作失敗的可能性。
  
  3、 啟動(dòng)B機(jī)上的數(shù)據(jù)庫。
  
  經(jīng)過上面的操作,現(xiàn)在B機(jī)上實(shí)際上已經(jīng)有了一個(gè)完整的數(shù)據(jù)庫了。現(xiàn)在我們來啟動(dòng)B機(jī)上的數(shù)據(jù)庫。看看是否能成功運(yùn)行:
  
  (1)  啟動(dòng)監(jiān)聽服務(wù):
  
  c:/>lsnrctl start
  
  (2)  啟動(dòng)實(shí)例服務(wù):
  
  c:/>oradim -startup -sid testdb
  
  (3)  啟動(dòng)數(shù)據(jù)庫:
  
  c:/>sqlplus /nolog
  
  SQL>conn sys@myoracle as sysdba ——這里sys的密碼與A機(jī)上sys賬戶密碼相同
  
  ——因?yàn)槎际鞘褂玫耐粋€(gè)密碼文件。
  
  SQL>startup  ——現(xiàn)在可以打開數(shù)據(jù)庫使用了,假如正常的情況下,上面連接時(shí)就
  
  ——可以啟動(dòng)數(shù)據(jù)庫了。
  
  至此,一個(gè)數(shù)據(jù)庫的克隆(Clone DB)成功完成。對(duì)于上面的操作,下面作個(gè)總結(jié),以便對(duì)Oracle的物理文件與Oracle系統(tǒng)之間的關(guān)系有一定程度的理解或熟悉:
  
  1、 Oracle數(shù)據(jù)庫物理文件與Oracle軟件(這里的軟件概念僅限于相關(guān)的命令或應(yīng)用程序操作,如sqlplus,lsnrctl等命令)相對(duì)獨(dú)立存在,兩者之間只存在軟件命令或應(yīng)用程序?qū)ξ锢砦募M(jìn)行操作的關(guān)系;
  
  2、 Oracle軟件命令或應(yīng)用程序假如要對(duì)數(shù)據(jù)庫物理文件進(jìn)行讀取,通常需要在Oracle默認(rèn)安裝的文件位置去查找,最主要的是密碼文件與初始化參數(shù)文件,當(dāng)然這兩個(gè)文件所在目錄也可以改變,但使用默認(rèn)位置就可以了,因?yàn)閷?duì)于我們的需求也僅限于默認(rèn)位置就可以了;
  
  3、 對(duì)于是否有數(shù)據(jù)丟失,那要看A機(jī)上數(shù)據(jù)是否完整?因?yàn)楝F(xiàn)在B機(jī)上的數(shù)據(jù)庫是A機(jī)數(shù)據(jù)庫的完整克隆(Clone),所以最后A機(jī)數(shù)據(jù)庫與B機(jī)數(shù)據(jù)庫完全一樣,當(dāng)然前提是所有物理文件沒有受到損壞;強(qiáng)烈推薦將A機(jī)上的數(shù)據(jù)庫置于歸檔模式,這樣Oracle可以最大程度保證數(shù)據(jù)不被丟失;
  
  4、 以上測(cè)試可以作為數(shù)據(jù)庫倒騰到不同機(jī)器上的一個(gè)可選方案,同時(shí)對(duì)原來機(jī)器上的數(shù)據(jù)庫不會(huì)有損壞的可能,因?yàn)樯厦娌襟E對(duì)原數(shù)據(jù)庫沒有修改操作;除非從A機(jī)復(fù)制物理文件至B機(jī)上時(shí),采用的是cut命令而丟失了物理文件;
  
  5、 整個(gè)持續(xù)過程需要花費(fèi)的時(shí)間較短:shutdown immediate時(shí)間,加上copy物理文件的時(shí)間,修改初始化參數(shù)的時(shí)間,與startup B機(jī)數(shù)據(jù)庫的時(shí)間。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 汉阴县| 琼结县| 大埔县| 黄平县| 化隆| 天津市| 当涂县| 木里| 旬阳县| 仪陇县| 镇原县| 行唐县| 泗阳县| 张家港市| 南靖县| 永仁县| 瓮安县| 鹤山市| 武乡县| 遂溪县| 南城县| 进贤县| 陕西省| 扶余县| 大竹县| 秦皇岛市| 江阴市| 揭东县| 麟游县| 安岳县| 祁东县| 宣汉县| 壤塘县| 仪征市| 铜鼓县| 图们市| 扶沟县| 大荔县| 工布江达县| 高邑县| 襄垣县|