UNIX系統(tǒng)提供了有關(guān)的命令,你可以按照組織文件的需要?jiǎng)?chuàng)建新的目錄、將一個(gè)目錄的文件拷貝或移動(dòng)到另一個(gè)目錄,就像往文件柜的其中一個(gè)抽屜增加一個(gè)新的文件夾,以及將一個(gè)文件夾里的報(bào)告移到另一個(gè)文件夾一樣。
UNIX文件系統(tǒng)是典型的樹狀結(jié)構(gòu),在根“/”下是存放不同功能文件的文件路徑,這些路徑在UNIX系統(tǒng)下被叫做目錄。以下是一些重要的目錄,在遷移實(shí)施時(shí)這些目錄下的相關(guān)文件起著關(guān)鍵作用,能否正確的遷移這些目錄下的相關(guān)文件決定遷移成功與否。
/opt、/usr和/sbin包含應(yīng)用程序、產(chǎn)品程序、系統(tǒng)程序、以及UNIX啟動(dòng)和關(guān)閉系統(tǒng)時(shí)起關(guān)鍵作用的命令。
/home目錄是UNIX系統(tǒng)中的每個(gè)用戶帳號(hào)的根目錄。除了提供登錄名和密碼,系統(tǒng)還提供一個(gè)個(gè)人使用的目錄。/home目錄下,每個(gè)用戶都有一個(gè)子目錄。用戶對(duì)該目錄下的內(nèi)容有完全的控制權(quán)。由用戶負(fù)責(zé)在這個(gè)子目錄下通過(guò)創(chuàng)建子目錄和文件來(lái)組織和管理相應(yīng)的作業(yè)。當(dāng)用戶登錄到系統(tǒng)時(shí),所在的目錄與帳號(hào)相關(guān),因此這個(gè)目錄通常被稱為主目錄或者登錄目錄。在這個(gè)目錄下,用戶能將位置定位到在文件系統(tǒng)的層次結(jié)構(gòu)中有訪問(wèn)權(quán)限的目錄。系統(tǒng)管理員負(fù)責(zé)限制用戶對(duì)特定目錄的訪問(wèn)。
/etc目錄下存放著許多系統(tǒng)配置文件。
/tmp目錄通常用來(lái)做操作系統(tǒng)的臨時(shí)文件存放場(chǎng),因?yàn)橄到y(tǒng)常要產(chǎn)生中間文件(intermediate files)或者工作文件(working files)。注意UNIX系統(tǒng)可以在任何時(shí)候刪除任何tmp目錄下的文件。
/dev目錄包含著代表硬件設(shè)備的文件,這些硬件設(shè)備可能已經(jīng)聯(lián)接到系統(tǒng)中。由于這些文件只是充當(dāng)這些設(shè)備的關(guān)口,數(shù)據(jù)不會(huì)直接存儲(chǔ)在這些設(shè)備文件上。這些文件常常被稱為設(shè)備文件(device files)。
二、ORACLE體系架構(gòu)
ORACLE是關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),有以下重要的系統(tǒng)結(jié)構(gòu):
1、物理結(jié)構(gòu),由控制文件、數(shù)據(jù)文件、重做日志文件、參數(shù)文件、歸檔文件、密碼文件組成。
2、控制文件:包含維護(hù)和驗(yàn)證數(shù)據(jù)庫(kù)完整性的必要信息,例如,控制文件用于識(shí)別數(shù)據(jù)文件和重做日志文件,一個(gè)數(shù)據(jù)庫(kù)至少需要一個(gè)控制文件。
3、數(shù)據(jù)文件:存儲(chǔ)數(shù)據(jù)的文件,業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)配置數(shù)據(jù)全部存放在數(shù)據(jù)文件中。
4、重做口志文件:含對(duì)數(shù)據(jù)庫(kù)所做的更改記錄,在數(shù)據(jù)庫(kù)出現(xiàn)故障時(shí)可以啟用數(shù)據(jù)恢復(fù)。一個(gè)數(shù)據(jù)庫(kù)至少需要兩個(gè)重做日志文件。
5、參數(shù)文件:定義Oracle例程的特性,例如,它包含調(diào)整SGA中一些內(nèi)存結(jié)構(gòu)大小的參數(shù)。
6、歸檔文件:是垂做日志文件的脫機(jī)副本,這些副本可能對(duì)于從介質(zhì)失敗中進(jìn)行恢復(fù)很必要。
7、密碼文件:認(rèn)證哪些用戶有權(quán)限啟動(dòng)和關(guān)閉Oracle例程。在進(jìn)行ORACLE數(shù)據(jù)庫(kù)遷移時(shí),以上文件系統(tǒng)需要完整的進(jìn)行移動(dòng),文件的權(quán)限和屬性要保證絕對(duì)的一致。
三、數(shù)據(jù)庫(kù)遷移的技術(shù)實(shí)現(xiàn)
1、UNIX環(huán)境準(zhǔn)備
在新部署的小型機(jī)上設(shè)置與原小型機(jī)相同的機(jī)器名,注意區(qū)分大小寫。在新機(jī)器上設(shè)置IP地址和網(wǎng)關(guān)等基礎(chǔ)的網(wǎng)絡(luò)參數(shù),保證一致性。同時(shí),將hosts和services文件復(fù)制到新系統(tǒng),使系統(tǒng)解析和網(wǎng)絡(luò)服務(wù)保持一致。
2、新建ORACLE用戶
新建ORACLE系統(tǒng)用戶組和用戶,保證用戶的組ID和用戶ID一致,查看/home下存在oracle目錄,檢查shell文件的存放位置。
3、設(shè)置ORACLE內(nèi)核參數(shù)
修改UNIX系統(tǒng)下的內(nèi)核參數(shù),這些內(nèi)核參數(shù)主要是調(diào)整ORACLE性能和穩(wěn)定性的。包括:MAXDSIZ、 MAXDSIZ 64、MAXSSIZ、MAXSSIZ_64、SEMMNI、SEMMNS、SEMMSL、SEMVMX、SEMMNU、SHMMNI、SHMSEG、 VPS_CEILING等。
4、遷移ORACLE參數(shù)文件
將/home/oracle下的啟動(dòng)和配置參數(shù)文件,拷貝到新機(jī)器上的對(duì)應(yīng)目錄,修改拷貝后的文件權(quán)限和屬性,或直接帶屬性拷貝。
5、遷移JAVA
由于ORACLE數(shù)據(jù)庫(kù)要用到JAVA,所以將原UNIX系統(tǒng)下的JAVA環(huán)境恢復(fù)到新系統(tǒng)上,才能保證ORACLE數(shù)據(jù)庫(kù)啟動(dòng)。
6、遷移ORACLE文件系統(tǒng)
將ORACLE文件系統(tǒng)通過(guò)磁帶或網(wǎng)絡(luò)直接拷貝,恢復(fù)到新建系統(tǒng)上,保證文件權(quán)限和屬性的一致。這里建議直接用磁帶進(jìn)行恢復(fù),用這種方式可以保證將拷貝的文件和路徑的權(quán)限和屬性同步進(jìn)行拷貝,保證了系統(tǒng)的一致性。
7、同步時(shí)間
遷移時(shí)的兩臺(tái)小型機(jī)必須保證時(shí)間一致,時(shí)間不一致會(huì)導(dǎo)致ORACLE數(shù)據(jù)庫(kù)無(wú)法啟動(dòng),時(shí)間認(rèn)證是ORACLE數(shù)據(jù)庫(kù)存放數(shù)據(jù)的一種安全機(jī)制,通過(guò)設(shè)置NTP網(wǎng)絡(luò)時(shí)間同步,達(dá)到兩臺(tái)服務(wù)器的時(shí)間高度一致。
在完成以上工作后,UNIX系統(tǒng)環(huán)境和ORACLE數(shù)據(jù)環(huán)境都得到了遷移,并保持了一致性,業(yè)務(wù)系統(tǒng)的遷移成功完成。正是由于UNIX系統(tǒng)下ORACLE數(shù)據(jù)庫(kù)的這種特殊的文件組織形式,使ORACLE數(shù)據(jù)庫(kù)的遷移變得更為可控,更為安全。
四、結(jié)語(yǔ)
隨著UNIX系統(tǒng)下數(shù)據(jù)庫(kù)技術(shù)的不斷普及,各種ORACLE數(shù)據(jù)庫(kù)的高級(jí)應(yīng)用都將逐步得到實(shí)踐,更為尖端的技術(shù)和應(yīng)用也將不斷的被開發(fā)和利用,信息化建設(shè)的基礎(chǔ)技術(shù)將跨上一個(gè)新的臺(tái)階。