国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

設備與實驗室管理平臺數(shù)據(jù)遷移的實踐與思考

2016-05-31 08:41陳岸慶金映輝
中國教育信息化·高教職教 2016年3期
關鍵詞:Oracle數(shù)據(jù)庫跨平臺

陳岸慶 金映輝

摘 要:為了提高我校設備與實驗室管理平臺的安全性和穩(wěn)定性,我們制定了可行的方案,實現(xiàn)了數(shù)據(jù)的遷移,完成了系統(tǒng)軟硬件的全面升級。本文詳細記錄了數(shù)據(jù)遷移的操作步驟和注意事項,為其他相似的業(yè)務系統(tǒng)數(shù)據(jù)遷移、跨平臺升級提供借鑒。

關鍵詞:數(shù)據(jù)遷移;跨平臺;跨版本;Oracle數(shù)據(jù)庫

中圖分類號:G482 文獻標志碼:A 文章編號:1673-8454(2016)05-0044-03

一、引言

本校的設備與實驗室管理平臺是一個基于三層結(jié)構(gòu)BS模式的設備管理系統(tǒng),實現(xiàn)了對教學、行政辦公、生活后勤設備以及大型精密儀器等固定資產(chǎn)的管理。設備與實驗室管理平臺運行環(huán)境為x86架構(gòu)的Windows Server 2003操作系統(tǒng),物理內(nèi)存總數(shù)為4G,使用Oracle 10G數(shù)據(jù)庫存儲業(yè)務數(shù)據(jù)。近年隨著高校信息化建設的不斷發(fā)展、學校規(guī)模的擴大、實驗室建設的快速發(fā)展、設備管理業(yè)務需求的不斷增加,現(xiàn)有服務器的硬件性能已經(jīng)嚴重落后。另外,系統(tǒng)架構(gòu)也存在紕漏,Tomcat應用服務和Oracle 10G數(shù)據(jù)庫部署在同一臺服務器,導致頻繁產(chǎn)生資源競爭。以上軟硬件環(huán)境影響了設備與實驗室管理平臺的安全性和穩(wěn)定性,常出現(xiàn)宕機現(xiàn)象,嚴重影響服務質(zhì)量。因此,對服務器硬件升級以及對軟件系統(tǒng)的優(yōu)化是此次數(shù)據(jù)遷移的主要目的。系統(tǒng)優(yōu)化主要從以下三個方面進行:①應用和存儲分離。應用系統(tǒng)和存儲系統(tǒng)分別部署在不同的服務器,這樣既避免資源競爭,又提高了系統(tǒng)的安全性和處理效率。②操作系統(tǒng)平臺的更換。生產(chǎn)數(shù)據(jù)庫7x24小時不間斷運行,選擇較為穩(wěn)定的Linux系統(tǒng)作為后臺操作系統(tǒng)。③數(shù)據(jù)庫版本的升級。11G版本的Oracle數(shù)據(jù)庫為DBA和開發(fā)人員提供了更多的功能和特性,并且提升了數(shù)據(jù)庫的穩(wěn)定性。

二、數(shù)據(jù)遷移準備工作

1.硬件服務器的規(guī)劃

目前虛擬機技術在許多應用環(huán)境中取代傳統(tǒng)物理服務器。虛擬化極大地節(jié)省了成本,簡化了管理,維護方便。因此在遷移之前,利用虛擬機技術對硬件服務器進行規(guī)劃。我們準備了四臺Dell PowerEdge R910服務器,采用Raid10方式構(gòu)建冗余磁盤,安裝Vmware Esxi 5.5U2,使用Vcenter組成群集,提供統(tǒng)一管理的虛擬機服務。構(gòu)建兩臺虛機服務器,一臺作為應用服務器提供對外Web服務,另一臺作為Oracle數(shù)據(jù)庫服務器存儲日常業(yè)務數(shù)據(jù),實現(xiàn)應用與存儲的分離。應用服務器虛擬機安裝Windows Server 2008 R2操作系統(tǒng),部署Tomcat應用服務,第一和第二塊網(wǎng)卡連接內(nèi)網(wǎng)Oracle數(shù)據(jù)庫,開啟vmotion以及管理流量選項,第三和第四塊網(wǎng)卡提供對外的Web服務。數(shù)據(jù)庫服務器虛擬機安裝Oracle linux 5.10操作系統(tǒng),部署Oracle 11.2.0.0版本數(shù)據(jù)庫,開啟vmotion功能。VSphere 5.1[1]以上版本支持無共享存儲的在線遷移功能,即使主機只有LOCAL DISK,沒有掛載共享存儲,也可以通過vmotion的網(wǎng)絡來遷移虛擬機,將虛擬機在ESXi主機上的“內(nèi)存數(shù)據(jù)”及“本地磁盤數(shù)據(jù)”通過網(wǎng)絡遷移至其他ESXi主機上。利用這個特性,當主機發(fā)生硬件故障或者需要升級主機硬件配置的時候,也不會對業(yè)務產(chǎn)生很大的影響,確保業(yè)務不被中斷。硬件服務器的規(guī)劃如圖1所示。

2.制定遷移方案

為了盡量減少停機時間,計劃在2小時之內(nèi)完成全部遷移工作。正因為如此,需制定詳細可行的遷移方案,確保遷移成功。萬一遷移失敗,要能及時恢復。

(1)遷移前需做好以下工作

①遷移方式的選擇。

Oracle數(shù)據(jù)庫提供了多種數(shù)據(jù)遷移的方式:EXP/IMP邏輯導入導出,數(shù)據(jù)泵,Rman備份恢復,表空間傳輸,高可用性dataguard、stream等。本校的設備與實驗室管理平臺作為一個業(yè)務系統(tǒng),為教職工提供固定資產(chǎn)管理服務。如果數(shù)據(jù)遷移導致長時間停機,會嚴重影響用戶開展日常工作。利用Oracle傳輸表空間(Transporting Tablespaces Between Databases)[2]的特性能夠滿足需求,在較短時間之內(nèi)快速完成數(shù)據(jù)遷移,同時也滿足跨平臺(Windows到Linux)以及跨版本(Oracle10G到11G)的技術要求。

②安裝數(shù)據(jù)庫服務器,配置Oracle 11G數(shù)據(jù)庫,編寫好Rman[3]備份恢復腳本。

③提前安裝配置Web應用服務器,程序指向新的Oracle數(shù)據(jù)庫,并且做好測試工作。

(2)遷移過程中需做好以下工作

①在遷移當天夜間,停止源端服務器的Web服務,設置數(shù)據(jù)庫的表空間狀態(tài)為只讀。

②此時業(yè)務處于停止狀態(tài),然后從源數(shù)據(jù)庫中導出表空間元數(shù)據(jù),拷貝元數(shù)據(jù)和表間數(shù)據(jù)文件到目標數(shù)據(jù)庫,拷貝完成之后導入表空間元數(shù)據(jù)到目標數(shù)據(jù)庫中。

③最后設置目標端數(shù)據(jù)庫表空間為讀寫。

④測試Web應用是否正常。如果出現(xiàn)短時間內(nèi)無法解決的問題,那么就進行簡單的回退工作:重新更改源數(shù)據(jù)表空間的狀態(tài)為讀寫,啟動源端Web應用,恢復正常業(yè)務。

三、數(shù)據(jù)庫遷移實現(xiàn)

1.系統(tǒng)字節(jié)碼的確定

跨平臺遷移表空間,需要查詢視圖V$TRANSPORTABLE_PLATFORM,確定源系統(tǒng)和目標系統(tǒng)ENDIAN_FORMAT是否一致。ENDIAN_FORMAT是系統(tǒng)平臺的字節(jié)碼,表示數(shù)據(jù)存儲和處理的順序。運行命令如下:

Select * from V$TRANSPORTABLE_PLATFORM;

此次遷移工作中源端的服務器操作系統(tǒng)Microsoft Windows 和目標端服務器操作系統(tǒng)Linux x86的ENDIAN_FORMAT都是Little,那么就省去了使用RMAN命令轉(zhuǎn)換數(shù)據(jù)文件的步驟。

2.自包含檢查

源數(shù)據(jù)庫表空間進行自包含檢查,確定需要遷移的對象是否引用其他表空間。使用數(shù)據(jù)庫自帶的PL/SQL包進行檢查,擁有EXECUTE_CATALOG_ROLE 角色權限的用戶可以運行PL/SQL包:

EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('表空間名稱', TRUE);

如果發(fā)現(xiàn)違反條件的對象,可以通過如下命令查看結(jié)果:

SELECT * FROMTRANSPORT_SET_VIOLATIONS;

如果無返回數(shù)據(jù)說明表空間是自包含的。

3.生成傳輸表空間數(shù)據(jù)集

用戶必須擁有EXP_FULL_DATABASE角色的權限,才可以生成傳輸表空間數(shù)據(jù)集。以下為操作的詳細步驟:

① 設置數(shù)據(jù)表空間集為只讀。

SQL> ALTER TABLESPACE “表空間名稱” READ ONLY;

Tablespace altered.

② 導出源數(shù)據(jù)表空間元數(shù)據(jù)。

元數(shù)據(jù)是描述數(shù)據(jù)結(jié)構(gòu)的信息,實際數(shù)據(jù)并沒有導出,所以即使表空間的數(shù)據(jù)量巨大,導出也能很快完成。

SQL> HOST

$EXPDP system/password DUMPFILE=sbc.dmp DIRECTORY=sbc_dir_source

TRANSPORT_TABLESPACES = “表空間名稱”。

DUMPILE定義元數(shù)據(jù)文件的名稱,DIRECTORY定義了dmp文件存放的位置,在使用導入導出之前必須先定義DIRECTORY對象,并且賦予read和write權限給public。

③ 完成之后,退回到SQLPLUS命令行

$ EXIT

如果系統(tǒng)字節(jié)碼endian不一致,此時可以使用RMAN命令來進行轉(zhuǎn)換。

4.傳輸表空間數(shù)據(jù)集

數(shù)據(jù)文件和表空間元數(shù)據(jù)需要拷貝到目標數(shù)據(jù)庫。可以使用多種方式實現(xiàn)拷貝:

①Linux操作系統(tǒng)從遠程Windows系統(tǒng)主機拷貝文件,可以使用SCP命令;

②使用Oracle提供的 DBMS_FILE_TRANSFER程序包,可以方便地從本地數(shù)據(jù)庫和遠程數(shù)據(jù)庫之間傳輸文件;

③使用SecureCRT、FileZilla等FTP工具實現(xiàn)遠程拷貝。

5.導入傳輸表空間數(shù)據(jù)集

導入操作不需要用戶擁有特別的權限,直接運行如下命令:

IMPDP system/password DUMPFILE=sbc.dmp DIRECTORY=sbc_dir_target TRANSPORT_DATAFILES=/路徑/數(shù)據(jù)文件名稱.dbf。

DUMPFILE參數(shù)定義導入的元數(shù)據(jù)文件名稱。The DIRECTORY 定義dmp文件存放位置,TRANSPORT_DATAFILES參數(shù)定義數(shù)據(jù)文件所在路徑和文件名稱。

命令運行成功之后,源表空間所有數(shù)據(jù)已經(jīng)拷貝到目標數(shù)據(jù)庫。查看導入日志是否有錯誤發(fā)生,同時更改表空間的狀態(tài)為讀寫。至此,數(shù)據(jù)遷移操作全部完成。

四、數(shù)據(jù)遷移工作思考

數(shù)據(jù)遷移是一個非常復雜和細致的過程,它要求設計與實施人員具備多元化的知識結(jié)構(gòu),否則就會陷入顧此失彼的境地。一個完整和成功的數(shù)據(jù)遷移解決方案包含六個部分:①具備專業(yè)技能的人員;②經(jīng)過驗證的解決方案;③穩(wěn)健可靠的流程和方法論;④交付前實驗室模擬驗證;⑤高效的遷移工具;⑥應急的回滾措施。任意一個條件的缺乏都有可能導致數(shù)據(jù)遷移不成功。[4]

本次數(shù)據(jù)遷移使用傳輸表空間特性實現(xiàn),整個遷移過程并不繁瑣。但是筆者在實際操作中,還是遇到了一些問題。數(shù)據(jù)遷移完成之后,應用系統(tǒng)某些模塊發(fā)生錯誤,通過查找原因,發(fā)現(xiàn)目標表空間中存儲過程、程序包、視圖、觸發(fā)器等都沒有生成,這類對象并不是數(shù)據(jù)段的對象,都是屬于SYSTEM表空間,傳輸表空間不能對SYSTEM表空間的對象進行遷移。因此,與字典信息有關的對象,沒有數(shù)據(jù)段的對象是不會在目標端生成,需要重新做一次exp/imp row=no導入導出,重新導入導出對象結(jié)構(gòu),這樣可以快速在目標端生成SYSTEM表空間的對象。

Oracle環(huán)境中,傳輸表空間是快速數(shù)據(jù)遷移的一種技術手段,理想情況下傳輸速率可以達到近似網(wǎng)絡直傳的速率。[5]相對于其他手段,傳輸表空間最大的好處就在于不需要進行繁復的抽取和還原過程,并且可以實現(xiàn)跨平臺的數(shù)據(jù)遷移。但是使用傳輸表空間特性是有限制的,需要滿足一些基本條件,否則遷移過程中會發(fā)生問題。

①源數(shù)據(jù)庫和目標數(shù)據(jù)庫必須使用相同的字符集(CHARACTER SET)和國家字符集(NATIONAL CHARACTER SET)。

②源數(shù)據(jù)庫表空間的名稱和目標數(shù)據(jù)庫中的表空間名稱不允許重復,如果相同,需要預先更改表空間名稱。

③表空間中對象如果有引用其他對象,那么所有對象必須在同一個表空間中。如果引用對象在其他表空間,那么這些表空間需要一起遷移。

④不能移動SYS用戶擁有的對象以及SYSTEM表空間中的內(nèi)容。例如PL/SQL、Java 類、視圖、同義詞、用戶、權限等。

⑤傳輸表空間需要系統(tǒng)平臺的字節(jié)碼(endian_format)相同。

遷移前期的準備工作還是很重要的,花費時間仔細參閱官方技術手冊和官方文檔還是非常值得的。

五、結(jié)束語

數(shù)據(jù)服務將成為高校信息化核心驅(qū)動力。數(shù)據(jù)無疑是最核心的驅(qū)動力。[6]數(shù)據(jù)的存儲以及數(shù)據(jù)的遷移成為時刻需要關注的問題。

為了降低數(shù)據(jù)遷移對系統(tǒng)的影響,我校設備與實驗室管理平臺使用傳輸表空間特性在短時間之內(nèi)完成整個應用數(shù)據(jù)的遷移,并且快速地恢復了應用系統(tǒng)的正常運行。目前新的應用平臺配置使用高性能的機架式服務器,采用更為穩(wěn)定的Linux系統(tǒng)運行Oracle11G版本數(shù)據(jù)庫。系統(tǒng)在新的運行環(huán)境下,整體性能得到增強,系統(tǒng)運行效率、穩(wěn)定性、安全性都得到大大的提升。數(shù)據(jù)庫能夠處理復雜事務,使業(yè)務系統(tǒng)的運行更加流暢。數(shù)據(jù)遷移為設備與實驗室管理平臺的穩(wěn)定運行奠定了堅實的基礎。

參考文獻:

[1]VMware.VMware vSphere 5.5 文檔中心[DB/OL].http://pubs.vmware.com/vsphere-55/index.jsp.

[2]Oracle.Database Administrator's Guide 10g Release 2(10.2) B14231-02[DB/OL].http://docs.oracle.com/cd/B19306_01/server.102/b14231/toc.htm.

[3]Oracle.Database Backup and Recovery User's Guide 11g Release 2 (11.2) E10642-06[DB/OL]. http://docs.oracle.com/cd/E11882_01/backup.112/e10642/toc.htm.

[4]數(shù)據(jù)遷移助力鄂爾多斯政務智能化[DB/OL]. http://www.sxjdw.org.cn/Details.aspx?pn=22&id=2311.

[5]朱有存,楊曉蓉,羅丹,郭平彩.用傳輸表空間技術升級Oracle數(shù)據(jù)庫[J].醫(yī)療衛(wèi)生裝備,2012(7):39-40.

[6]宓詠.數(shù)據(jù)服務將成為高校信息化核心驅(qū)動力[J].中國教育網(wǎng)絡,2015(8).

(編輯:王天鵬)

猜你喜歡
Oracle數(shù)據(jù)庫跨平臺
跨層級網(wǎng)絡、跨架構(gòu)、跨平臺的數(shù)據(jù)共享交換關鍵技術研究與系統(tǒng)建設
一款游戲怎么掙到全平臺的錢?
跨平臺APEX接口組件的設計與實現(xiàn)
Oracle數(shù)據(jù)庫安全管理策略的優(yōu)化
Oracle數(shù)據(jù)庫應用問題與解決方案分析
基于QT的跨平臺輸電鐵塔監(jiān)控終端軟件設計與實現(xiàn)
基于OPC跨平臺通信的電機監(jiān)測與診斷系統(tǒng)
基于B/S的跨平臺用戶界面可配置算法研究
翁源县| 天祝| 崇仁县| 安义县| 社旗县| 松原市| 山东省| 临海市| 巴彦淖尔市| 白城市| 新宾| 鹿邑县| 怀柔区| 南平市| 都江堰市| 固始县| 富民县| 黑山县| 都昌县| 兰考县| 九龙县| 青龙| 昌黎县| 且末县| 石泉县| 清远市| 饶平县| 义乌市| 顺平县| 砚山县| 五河县| 清水河县| 屏东县| 丹棱县| 阿巴嘎旗| 开阳县| 体育| 南皮县| 宿松县| 通河县| 宜阳县|