|
導(dǎo)讀數(shù)據(jù)庫(kù),簡(jiǎn)而言之可視為電子化的文件柜——存儲(chǔ)電子文件的處所,用戶可以對(duì)文件中的數(shù)據(jù)進(jìn)行新增、截取、更新、刪除等操作。所謂“數(shù)據(jù)庫(kù)”是以一定方式儲(chǔ)存在一起、能與多個(gè)用戶共享、具有盡可能小的冗余度、與應(yīng)... 數(shù)據(jù)庫(kù),簡(jiǎn)而言之可視為電子化的文件柜——存儲(chǔ)電子文件的處所,用戶可以對(duì)文件中的數(shù)據(jù)進(jìn)行新增、截取、更新、刪除等操作。所謂“數(shù)據(jù)庫(kù)”是以一定方式儲(chǔ)存在一起、能與多個(gè)用戶共享、具有盡可能小的冗余度、與應(yīng)用程序彼此獨(dú)立的數(shù)據(jù)集合。 1、Export/Import的用處 Oracle Export/Import工具用于在數(shù)據(jù)庫(kù)之間傳遞數(shù)據(jù)。 Export從數(shù)據(jù)庫(kù)中導(dǎo)出數(shù)據(jù)到dump文件中 Import從dump文件中到入數(shù)據(jù)導(dǎo)數(shù)據(jù)庫(kù)中 下面是一般使用他們的情況 (1)、兩個(gè)數(shù)據(jù)庫(kù)之間傳送數(shù)據(jù) 同一個(gè)版本的oracle Server之間 不同版本的oracle Server之間 同種OS之間 不同種OS之間 (2)、用于數(shù)據(jù)庫(kù)的備份和恢復(fù) (3)、從一個(gè)SCHEMA傳送到另一個(gè)SCHEMA (4)、從一個(gè)TABLESPACE傳送到另一個(gè)TABLESPACE 2、DUMP文件 EXPORT到出的是二進(jìn)制格式的文件,不可以手工編輯,否則會(huì)損壞數(shù)據(jù)。該文件在ORACLE支持的任何平臺(tái)上都是一樣的格式,可以在各平臺(tái)上通用。DUMP文件在IMPORT時(shí)采用向上兼容方式,就是說(shuō)ORALCE7的DUMP文件可以導(dǎo)入到ORACLE8中,但是版本相差很大的版本之間可能有問題。 3、EXPORT/IMPORT過程 EXPORT導(dǎo)出的DUMP文件包含兩種基本類型的數(shù)據(jù) - DDL - Data DUMP文件包含所有重新創(chuàng)建Data Dictionary的DDL語(yǔ)句,基本上是可以讀的格式。 但是應(yīng)該注意的是,千萬(wàn)不要用文本編輯器編輯之,oracle說(shuō)不支持這樣做的。 下面列出的是DUMP文件中包括的ORACLE對(duì)象,分為TABLE/USER/FULL方式,有些對(duì)象 只是在FULL方式下才有(比如public synonyms, users, roles, rollback segm ents等) Table mode User Mode Full Database Mode ---------------------- ---------------------- ---------------------- --- Table definitions Table definitions Table definitions Table data Table data Table data Owner’s table grants Owner’s grants Grants Owner’s table indexes Owner’s indexes Indexes Table constraints Table constraints Table constraints Table triggers Table triggers All triggers Clusters Clusters Database links Database links Job queues Job queues Refresh groups Refresh groups Sequences Sequences Snapshots Snapshots Snapshot logs Snapshot logs Stored procedures Stored procedures Private synonyms All synonyms Views Views Profiles Replication catalog Resource cost Roles Rollback segments System audit options System privileges Tablespace definitions Tablespace quotas User definitions 4、IMPORT時(shí)的對(duì)象倒入順序 在倒入數(shù)據(jù)時(shí),ORACLE有一個(gè)特定的順序,可能隨數(shù)據(jù)庫(kù)版本不同而有所變化,但是現(xiàn)在是這樣的。 1. Tablespaces 14. Snapshot Logs 2. Profiles 15. Job Queues 3. Users 16. Refresh Groups 4. Roles 17. Cluster Definitions 5. System Privilege Grants 18. Tables (also grants,commen ts, 6. Role Grants indexes, constraints, audi ting) 7. Default Roles 19. Referential Integrity 8. Tablespace Quotas 20. POSTTABLES actions 9. Resource Costs 21. Synonyms 10. Rollback Segments 22. Views 11. Database Links 23. Stored Procedures 12. Sequences 24. Triggers, Defaults and Aud iting 13. Snapshots [page_break] 按這個(gè)順序主要是解決對(duì)象之間依賴關(guān)系可能產(chǎn)生的問題。TRIGGER最后導(dǎo)入,所以在INSERT數(shù)據(jù)到數(shù)據(jù)庫(kù)時(shí)不會(huì)激發(fā)TRIGGER。在導(dǎo)入后可能會(huì)有一些狀態(tài)是INVALID的PROC EDURE,主要是IMPORT時(shí)會(huì)影響一些數(shù)據(jù)庫(kù)對(duì)象,而IMPORT并不重新編譯PROCEDURE,從而造成 5、兼容性問題 6、EXPORT需要的VIEW 這些VIEW在不同ORACLE版本之間有可能不同,每個(gè)版本可能都有新的特性加入。所以在新的版本里面執(zhí)行舊的dump文件會(huì)有錯(cuò)誤,一般可以執(zhí)行CATEXP.SQL解決這些問題,解決向后兼容問題的一般步驟如下: 導(dǎo)出數(shù)據(jù)庫(kù)的版本比目標(biāo)數(shù)據(jù)庫(kù)老的情況: 導(dǎo)出數(shù)據(jù)庫(kù)的版本比目標(biāo)數(shù)據(jù)庫(kù)新的情況: 7、碎片整理 CREATE TABLE .... STORAGE( INITIAL 10K NEXT 10K..) 另外,也可能會(huì)超過DATAFILE的大小。比如,有4個(gè)50M的數(shù)據(jù)文件,其中表A有15個(gè)10M的EXTENT,如果采用COMPRESS=Y的方式導(dǎo)出數(shù)據(jù),將會(huì)有INITIAL=150M,那么在重新導(dǎo)入時(shí),不能分配一個(gè)150M的EXTENT,因?yàn)閱蝹(gè)EXTENT不能跨多個(gè)文件。
當(dāng)然可以在IMPORT時(shí)使用FROMUSER和TOUSER參數(shù)來(lái)確定要導(dǎo)入的USER,但是要保證TOUSER一定已經(jīng)存在啦。 9、EXPORT/IMPORT對(duì)SQUENCE的影響 (2)另外如果SEQUENCE使用CACHE,在EXPORT時(shí),那些在CACHE中的值就會(huì)被忽略的,只是從數(shù)據(jù)字典里面取當(dāng)前值EXPORT。 如果在進(jìn)行FULL方式的EXPORT/IMPORT時(shí),恰好在用sequence更新表中某列數(shù)據(jù),而且不是上面兩種情況,則導(dǎo)出的是更新前的數(shù)據(jù)。 如果采用常規(guī)路徑方式,每一行數(shù)據(jù)都是用INSERT語(yǔ)句,一致性檢查和INSERT T RIGGER如果采用DIRECT方式,某些約束和trigger可能不觸發(fā),如果在trigger中使用sequence.nextval,將會(huì)對(duì)sequence有影響。 全新的路由器不僅讓你更穩(wěn)定快速地連接無(wú)線網(wǎng)絡(luò),更可以讓家中的智能設(shè)備連接在一起。 |
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!