|
导读数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应... 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。 1、Export/Import的用处 Oracle Export/Import工具用于在数据库之间传递数据。 Export从数据库中导出数据到dump文件中 Import从dump文件中到入数据导数据库中 下面是一般使用他们的情况 (1)、两个数据库之间传送数据 同一个版本的oracle Server之间 不同版本的oracle Server之间 同种OS之间 不同种OS之间 (2)、用于数据库的备份和恢复 (3)、从一个SCHEMA传送到另一个SCHEMA (4)、从一个TABLESPACE传送到另一个TABLESPACE 2、DUMP文件 EXPORT到出的是二进制格式的文件,不可以手工编辑,否则会损坏数据。该文件在ORACLE支持的任何平台上都是一样的格式,可以在各平台上通用。DUMP文件在IMPORT时采用向上兼容方式,就是说ORALCE7的DUMP文件可以导入到ORACLE8中,但是版本相差很大的版本之间可能有问题。 3、EXPORT/IMPORT过程 EXPORT导出的DUMP文件包含两种基本类型的数据 - DDL - Data DUMP文件包含所有重新创建Data Dictionary的DDL语句,基本上是可以读的格式。 但是应该注意的是,千万不要用文本编辑器编辑之,oracle说不支持这样做的。 下面列出的是DUMP文件中包括的ORACLE对象,分为TABLE/USER/FULL方式,有些对象 只是在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时的对象倒入顺序 在倒入数据时,ORACLE有一个特定的顺序,可能随数据库版本不同而有所变化,但是现在是这样的。 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] 按这个顺序主要是解决对象之间依赖关系可能产生的问题。TRIGGER最后导入,所以在INSERT数据到数据库时不会激发TRIGGER。在导入后可能会有一些状态是INVALID的PROC EDURE,主要是IMPORT时会影响一些数据库对象,而IMPORT并不重新编译PROCEDURE,从而造成 5、兼容性问题 6、EXPORT需要的VIEW 这些VIEW在不同ORACLE版本之间有可能不同,每个版本可能都有新的特性加入。所以在新的版本里面执行旧的dump文件会有错误,一般可以执行CATEXP.SQL解决这些问题,解决向后兼容问题的一般步骤如下: 导出数据库的版本比目标数据库老的情况: 导出数据库的版本比目标数据库新的情况: 7、碎片整理 CREATE TABLE .... STORAGE( INITIAL 10K NEXT 10K..) 另外,也可能会超过DATAFILE的大小。比如,有4个50M的数据文件,其中表A有15个10M的EXTENT,如果采用COMPRESS=Y的方式导出数据,将会有INITIAL=150M,那么在重新导入时,不能分配一个150M的EXTENT,因为单个EXTENT不能跨多个文件。
当然可以在IMPORT时使用FROMUSER和TOUSER参数来确定要导入的USER,但是要保证TOUSER一定已经存在啦。 9、EXPORT/IMPORT对SQUENCE的影响 (2)另外如果SEQUENCE使用CACHE,在EXPORT时,那些在CACHE中的值就会被忽略的,只是从数据字典里面取当前值EXPORT。 如果在进行FULL方式的EXPORT/IMPORT时,恰好在用sequence更新表中某列数据,而且不是上面两种情况,则导出的是更新前的数据。 如果采用常规路径方式,每一行数据都是用INSERT语句,一致性检查和INSERT T RIGGER如果采用DIRECT方式,某些约束和trigger可能不触发,如果在trigger中使用sequence.nextval,将会对sequence有影响。 全新的路由器不仅让你更稳定快速地连接无线网络,更可以让家中的智能设备连接在一起。 |
温馨提示:喜欢本站的话,请收藏一下本站!