oracle数据迁移方法
Oracle数据库的数据迁移方法

数据迁移的一般步骤
对数据库管理人员来说,数据库数据迁移极具挑战性,一旦措施不当,珍贵的数据资源将面临丢失的危险,要成功地实现数据库数据平滑迁移,需要周密计划和充分准备,并按照一定的步骤来完成。
设计数据迁移方案
设计数据迁移方案主要包括以下几个方面工作:研究与数据迁移相关的资料,或在网站上查询相关内容、评估和选择数据迁移的软硬件平台、选择数据迁移方法、选择数据备份和恢复策略、设计数据迁移和测试方案等。
进行数据模拟迁移
根据设计的数据迁移方案,建立一个模拟的数据迁移环境,它既能仿真实际环境又不影响实际数据,然后在数据模拟迁移环境中测试数据迁移的效果。
数据模拟迁移前也应按备份策略备份模拟数据,以便数据迁移后能按恢复策略进行恢复测试。
测试数据模拟迁移
根据设计的数据迁移测试方案测试数据模拟迁移,也就是检查数据模拟迁移后数据和应用软件是否正常,主要包括:数据一致性测试、应用软件执行功能测试、性能测试、数据备份和恢复测试等。
准备实施数据迁移
数据模拟迁移测试成功后,在正式实施数据迁移前还需要做好以下几个方面工作:进行完全数据备份、确定数据迁移方案、安装和配置软硬件等。
正式实施数据迁移
按照确定的数据迁移方案,正式实施数据迁移。
测试数据迁移效果
按照数据迁移测试方案测试数据迁移效果,并对数据迁移后的数据库参数和性能进行调整,使之满足数据迁移后实际应用系统的需要。
移植系统应用软件
将实际应用系统的应用软件移植到数据迁移后的数据库系统上,并使之正常运行。
正式运行应用系统
在正式实施数据迁移成功并且数据库参数和性能达到要求后,就可以正式运行应用系统,并投入实际使用。
实现向Oracle8i数据迁移。
oracle数据迁移方法

oracle数据迁移方法Oracle数据迁移是将现有的Oracle数据库中的数据、表结构以及相关的约束条件等迁移到另一个Oracle数据库中的过程。
在实际的数据迁移中,存在以下几种常见的方法和工具:1.手动数据迁移:手动数据迁移是一种基本的迁移方法,它需要手工编写SQL语句完成数据迁移的操作。
这种方法适用于迁移的数据量较小的情况,迁移过程相对简单。
迁移操作可以分为以下几个步骤:-创建目标数据库-创建目标数据库的表结构,包括表、索引、约束等-导出源数据库中的数据-将导出的数据文件导入到目标数据库中手动数据迁移方法的优点是灵活性高,适用于各种复杂情况下的迁移操作。
但是由于需要手工编写SQL语句,容易出现错误,对于数据量较大的迁移任务来说,效率较低。
2. Oracle迁移工具:Oracle官方提供了多个数据迁移工具,如Oracle Data Pump和Oracle GoldenGate等。
- Oracle Data Pump是一个用于高效迁移数据和元数据的工具。
它支持全库导出和导入,可以将源数据库中的数据、表结构、存储过程等导出为二进制文件,然后通过网络或者直接复制文件的方式导入到目标数据库中。
Oracle Data Pump在迁移时可以进行数据过滤、表空间映射等操作,可以对数据进行压缩和加密等处理。
- Oracle GoldenGate是一个实时数据复制和数据同步工具,它可以在源数据库和目标数据库之间实时同步数据,保证两个数据库的数据一致性。
GoldenGate可以进行额外的数据转换和过滤操作,支持多种复杂的迁移场景,如异构数据库迁移、分布式迁移等。
3.第三方迁移工具:除了Oracle官方提供的工具,还有一些第三方的数据迁移工具,如TOAD、SQL Developer等。
这些工具提供了可视化的操作界面,可以简化迁移操作的过程,提高效率。
-TOAD是一款功能强大的数据库管理工具,具有数据导入导出、数据比较、数据同步等功能。
oracle 数据迁移方案

Oracle 数据迁移方案1. 简介随着业务的发展和系统的升级,数据迁移已经成为一个不可避免的任务。
在Oracle 数据库中,数据迁移主要包括迁移数据表、迁移数据对象以及导出和导入数据等方面。
本文将介绍一些常用的 Oracle 数据迁移方案。
2. 数据表迁移2.1 导出数据表Oracle 数据表的导出可通过使用expdp命令来实现。
该命令可以将指定的数据表导出为二进制格式的文件,以供后续导入使用。
以下是导出数据表的步骤:1.打开终端或命令行窗口,登录到数据库。
2.运行以下命令导出数据表:expdp username/password@connect_string tables=table1,table2 directory=datapump_dir dumpfile=tables.dmp logfile=tables.log–username/password:登录数据库的用户名和密码。
–connect_string:数据库连接字符串。
–tables:要导出的数据表名称,多个表名之间用逗号分隔。
–directory:导出文件存储的目录。
–dumpfile:导出文件的名称。
–logfile:导出日志文件的名称。
2.2 导入数据表使用impdp命令可以将之前导出的数据表文件导入到目标数据库中。
以下是导入数据表的步骤:1.打开终端或命令行窗口,登录到目标数据库。
2.运行以下命令导入数据表:impdp username/password@connect_string directory=datapump_d ir dumpfile=tables.dmp logfile=import.log–username/password:登录目标数据库的用户名和密码。
–connect_string:目标数据库的连接字符串。
–directory:导出文件存储的目录。
–dumpfile:导出文件的名称。
–logfile:导入日志文件的名称。
Oracle数据库迁移的几种方式

Oracle数据库迁移的⼏种⽅式⾯试:⼀、exp/imp逻辑备份与恢复:⼆、Storage存储迁移:将数据⽂件、控制⽂件、⽇志⽂件、spfile挂到新机器上,然后在新机器上启动数据库。
三、利⽤data guard迁移:四、⽤rman做迁移:我们常常需要对数据进⾏迁移,迁移到更性能配置更⾼级的主机OS上、迁移到远程的机房、迁移到不同的平台下,以下介绍ORACLE的⼏种数据库迁移⽅案: ⼀、exp/imp逻辑备份与恢复: 它是最常⽤最简单的⽅法,⼀般是基于应⽤的owner级做导出导⼊。
操作⽅法为:在新库建⽴好owner和表空间,停⽼库的应⽤,在⽼库执⾏:$ exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000,导⼊dmp⽂件到新库,在新库执⾏如下命令:$ imp user/pwd fromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y. 优缺点:优点是可以跨平台使⽤;缺点是停机时间长,停机时间为从exp到⽹络传输到新库,再加上imp的时间。
⼆、Storage存储迁移: 这种情况下,数据⽂件、控制⽂件、⽇志⽂件、spfile都在存储上(⼀般情况下是裸设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。
操作⽅法:将⽼库的pfile(因为⾥⾯有指向裸设备的spfile链接),tnsnames.ora,listener.ora,密码⽂件传到新库的对应位置。
将存储切⾄新机,或者⽤⽂件拷贝或dd的⽅式复制数据⽂件,启动数据库。
优缺点:优点是该迁移⽅式⾮常简单,主要的⼯作是主机⼯程师的⼯作,dba只需配合即可,停机时间为停库、切存储、起库的时间;缺点是要求新⽼库都是同⼀平台,是相同的数据库版本。
三、利⽤data guard迁移: ⽤dg我们不仅可以⽤来做容灾,物理的dg我们还可以作为迁移的⽅式。
Oracle数据迁移技术与方案

Oracle数据迁移技术与方案1.传统数据迁移技术传统的数据迁移技术包括使用SQL*Loader和Oracle Data Pump等工具实现数据的导入导出。
SQL*Loader是一种基于文本文件的数据导入工具,通过将数据组织成平面文本文件并使用控制文件定义导入规则,然后使用SQL*Loader命令将数据导入到Oracle数据库。
Oracle Data Pump 是Oracle提供的一种高效的数据导入导出工具,它使用Oracle的内部数据泵技术实现高速数据迁移。
2. SQL Developer工具SQL Developer是Oracle官方提供的一款免费的集成开发环境(IDE),它也提供了数据迁移的功能。
通过SQL Developer可以连接到源和目标数据库,然后使用数据导入导出向导导入导出数据。
此外,SQL Developer还提供了数据比较和同步的功能,可以比较两个数据库之间的差异,并将差异数据同步到目标数据库。
3. GoldenGate技术GoldenGate是一种高性能的数据复制和数据集成解决方案,可以在源数据库和目标数据库之间实现实时的、零停机时间的数据复制和数据同步。
通过配置GoldenGate的参数和脚本,可以将源数据库上的数据实时地复制到目标数据库上,实现数据的迁移、灾备和同步。
GoldenGate还支持多种数据库系统之间的数据复制,包括Oracle、MySQL、SQL Server 等。
4.集成工具除了以上提到的工具和技术,还有一些集成工具可以用于Oracle数据迁移。
这些集成工具包括Data Integrator、Informatica和Talend等。
这些工具提供了图形化的界面和丰富的功能,可以通过拖拽和配置来实现复杂的数据迁移和转换操作。
这些工具通常支持多种数据源和目标数据库,并且提供了强大的数据集成和数据转换功能。
在选择合适的Oracle数据迁移技术和方案时,需要考虑以下几个因素:1.数据规模:如果数据规模很大,可能需要选择高效的数据迁移工具和技术,以避免数据迁移过程对业务造成影响。
带有oracle数据库的数据迁移方案

带有oracle数据库的数据迁移方案数据迁移是将现有的数据从一个数据库系统迁移到另一个数据库系统的过程。
对于带有Oracle数据库的数据迁移,有以下几种方案可以考虑:1.数据备份和还原:这是一种简单且常用的迁移方案,适合小规模数据迁移。
首先,对Oracle数据库进行数据备份,可以使用Oracle的expdp命令或其他备份工具。
然后,在目标数据库中创建一个新的数据库实例,将备份文件导入到新的数据库中,可以使用Oracle的impdp命令或其他还原工具。
优点:简单易用,适用于小规模数据备份和迁移。
缺点:需要删除目标数据库并重新创建,无法实现实时数据迁移。
2.数据库复制:这是一种常用的迁移方案,适用于大规模数据迁移和实时数据同步。
可以使用Oracle的数据复制工具(如Oracle GoldenGate)将源数据库的数据同步到目标数据库。
优点:可以实现实时数据同步,无需停机维护。
缺点:配置和管理复制过程较复杂,需要考虑网络带宽和延迟。
3.ETL工具:ETL(Extract-Transform-Load)工具是一种用于数据迁移和转换的技术,可以将源数据库的数据抽取、转换和加载到目标数据库中。
常见的商业ETL工具有Informatica、IBM DataStage等。
优点:支持数据转换和清洗,可以按需选择需要迁移的数据。
缺点:商业ETL工具费用较高,需要学习和配置工具的使用。
4.自定义脚本:对于较为复杂的数据迁移需求,可以使用自定义脚本来实现。
可以使用Oracle的PL/SQL编程语言编写脚本来抽取、转换和加载数据。
优点:可以满足各种复杂的数据迁移需求。
缺点:需要熟悉Oracle的PL/SQL编程语言,编写和测试脚本较为复杂。
无论选择哪种迁移方案,以下是一些常见的注意事项和最佳实践:-事先进行充分的规划和测试,确保迁移过程可以顺利完成。
-在迁移前,对源数据库进行彻底的清理和优化,删除不必要的数据、索引和对象。
oracle数据库迁移方案
oracle数据库迁移方案在进行Oracle数据库迁移时,需要考虑到诸多因素,包括数据的完整性、稳定性和安全性。
本文将介绍一种可行的Oracle数据库迁移方案,希望能够对大家有所帮助。
首先,进行数据库迁移前,需要对现有的数据库进行全面的备份。
这一步非常关键,可以保证在迁移过程中出现问题时,能够及时恢复数据,避免造成不必要的损失。
可以选择使用Oracle提供的备份工具,也可以使用第三方备份软件进行备份操作。
其次,确定目标数据库的环境和配置。
在进行数据库迁移时,目标数据库的环境和配置需要与原数据库保持一致,包括操作系统、数据库版本、存储设备等。
如果目标数据库与原数据库的环境有所不同,需要提前进行环境的调整和配置的优化。
接下来,选择合适的迁移工具。
Oracle提供了多种数据库迁移工具,包括Data Pump、Transportable Tablespaces等。
根据实际情况选择合适的迁移工具,并对迁移工具进行详细的配置和参数设置。
然后,进行数据迁移操作。
在进行数据迁移时,需要确保数据的完整性和一致性。
可以选择全量迁移或增量迁移的方式,根据实际情况选择合适的迁移策略。
在迁移过程中,需要对迁移的数据进行验证和测试,确保数据的准确性和完整性。
最后,进行数据库的验证和性能调优。
在完成数据迁移后,需要对目标数据库进行全面的验证和性能调优。
可以使用Oracle提供的性能调优工具,对数据库的性能进行优化和调整,确保数据库的稳定性和高效性。
综上所述,Oracle数据库迁移是一个复杂的过程,需要对各个环节进行详细的规划和操作。
通过本文介绍的迁移方案,希望能够帮助大家顺利完成数据库迁移操作,确保数据的安全和稳定。
祝大家在数据库迁移的过程中顺利完成,谢谢!。
ORACLE数据库迁移方案
ORACLE数据库迁移方案Oracle数据库是一个关系型数据库管理系统,具有强大的功能和稳定性。
数据库迁移是将一个数据库从一个环境迁移到另一个环境的过程,需要精心计划和执行。
下面是一个Oracle数据库迁移的方案,包括迁移的准备工作、迁移工具的选择、数据的备份和恢复、测试和验证以及最终的迁移步骤。
1.迁移的准备工作:a.了解源数据库的技术规格、版本和架构,确定目标数据库的技术规格和版本要求。
b.确定迁移的目标和目标环境的可用性和稳定性。
c.评估迁移过程中可能出现的风险和问题,并准备应对措施。
d.编制详细的迁移计划和时间表。
2.迁移工具的选择:a.选择适合的迁移工具,根据实际情况选择在线迁移工具或离线迁移工具。
b. 如果迁移数据量大,可以选择使用Oracle Data Pump工具进行数据迁移。
c. 如果需要进行数据转换,可以选择使用Oracle SQL Developer工具进行数据迁移。
3.数据备份和恢复:a.在迁移之前,对源数据库进行备份,以防迁移过程中出现数据丢失或损坏的情况。
b.在迁移过程中,定期进行数据恢复测试,确保备份的完整性和可用性。
c.在迁移完成后,对目标数据库进行数据恢复测试,验证数据是否完整和正确。
4.测试和验证:a.在目标环境中创建一个与源数据库相似的测试环境,进行迁移过程的测试和验证。
b.在测试环境中进行功能和性能测试,确保迁移后的数据库能够正常运行和满足需求。
c.在迁移过程中,根据测试结果做出必要的调整和改进。
5.最终迁移步骤:a.在迁移之前,关闭源数据库,确保所有的数据都已经写入磁盘。
b.将源数据库的数据文件、日志文件和控制文件复制到目标环境中,并创建与源数据库相同的目录结构和权限。
c.在目标环境中,根据源数据库的配置文件创建新的数据库实例。
d.在目标环境中启动数据库实例,并将数据文件和日志文件导入到目标数据库。
e.在目标数据库中配置和测试用户连接,确保数据库能够正常运行。
oracle数据迁移方案
oracle数据迁移方案在企业信息化建设中,数据迁移是非常重要的一项工作。
随着云计算、大数据等技术的发展,企业的数据量也越来越大,为了解决数据存储、备份、恢复等问题,企业需要将数据从一个系统或平台迁移到另一个系统或平台。
本文将介绍一种有效的oracle 数据迁移方案,以帮助企业高效地完成数据迁移工作。
一、方案设计1.1 数据库选型在进行数据迁移之前,需要选择合适的数据库。
目前市场上常见的数据库有Oracle、MySQL、SQL Server等。
本方案使用Oracle作为迁移目标数据库。
1.2 迁移方式数据迁移的方式有很多种,包括数据导出、数据备份恢复、在线数据迁移等。
针对不同的业务场景和数据类型,选择合适的迁移方式可以提高迁移效率和数据安全性。
本方案采用数据备份恢复的方式进行迁移。
1.3 数据备份在进行数据迁移之前,需要进行数据备份。
数据备份是保证数据安全性和完整性的重要手段。
对于oracle数据库,可以使用Oracle RMAN进行备份。
备份文件可以保存在本地磁盘或者网络磁盘中。
1.4 迁移工具选型迁移工具是完成迁移任务的重要工具。
选择合适的迁移工具可以提高迁移效率和数据质量。
本方案采用Oracle Data Pump工具进行数据迁移。
1.5 迁移模式Oracle Data Pump提供了两种迁移模式:全量迁移和增量迁移。
全量迁移将所有数据都导出到新的数据库中,适用于对整个数据库进行迁移。
增量迁移只导出源数据库发生变化的数据,适用于对数据库中部分数据进行迁移。
本方案采用增量迁移模式。
二、方案实施2.1 数据备份首先需要对源数据库进行数据备份。
通过Oracle RMAN制定备份计划,并执行备份任务。
备份文件可以保存在本地磁盘或者网络磁盘中。
备份过程中需要保证数据库和备份文件的一致性,否则可能导致备份文件损坏或者无法恢复。
2.2 迁移目标数据库在目标数据库上创建相应的表空间和用户,并授权用户读取备份文件。
oracle复制数据文件迁移方法
采取恢复此文件
recover datafile 3;
SQL> recover datafile 3;
ORA-03113: end-of-file on communication channel
Process ID: 13959320
Session ID: 232 Serial number: 3
因为是只安装数据库软件,比较简单,此处省略安装方法
又因为30.9.1.49 oracle用户配置文件是复制100.16.91.70而来,所以安装后两个服务器数据库环境一样
5、复制文件(目录不存在的需要新建)
a)第一步查询出的所有物理文件复制到130.9.1.49上采用 rcp命令,此命令使用方法附在最后
看来是复制数据文件没关数据库的问题,只好重新复制此文件
先通过语句找出文件名:
select file_name from dba_data_files where file_id='3'
重新复制文件
rcp -rp /langchaodata/O817/undotbs01.dbf rcp1:/langchaodata/O817
SQL> recover database;
SQL> alter database open;
rcp命令配置方法:
比如要把主机A的文件复制到主机B
配置主机A:
vi /etc/hosts ,打开文件后最后边添加
主机B的IP rcp2
ORA-01110: data file 3: '/langchaodata/O817/undotbs01.dbf'
ORA-01207: file is more recent than control file - old control file
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oracle数据迁移方案数据迁移通俗的说就是将数据从一个地方转移到另一个地方。
主要使用场景有:根据正式系统搭建测试环境、从内网复制到外网、数据库服务器硬件升级等。
根据需要迁移的数据量大小、系统架构,可采取不同的迁移方法。
注:以下所说方法,不考虑数据的增量更新、不考虑数据的实时同步、不考虑数据的逻辑转换。
如果有这些需求,建议使用第三方ETL工具或使用Oracle的其他数据同步技术。
一、常用示例1.1 如何在客户现场搭建测试环境?常规方案,使用imp/exp工具,先在源库执行直接路径导出操作,然后在目标库执行导入操作。
IMP/EXP的执行速度主要受限于磁盘及网络。
数据量:1.5G导出用时:5分钟导入用时:23分钟导出文件大小:641M导出导入环境:单CPU,700M内存。
为力求最大速度,使用直接路径导出、设置最大I/O 缓冲、导入导出文件都放在服务器上执行。
1.2 还有没有更快的办法?有,仍然使用impdp/expdp。
只是不再将数据导出后导入,而是直接将数据从源库导入到目的库。
CMD> Impdp testi@目标库 directory=DMPDIR schemas=TESTInetwork_link=源库dblink remap_schema=TESTI:TESTA上面语句的操作是将源库的TESTI用户的数据,导入到目标库的TESTA用户下。
这个操作是局域网内迁移数据最方便的工具,不过也可能是速度最慢的工具。
1.3 有没有还快一点的方法?有,换用impdp/expdp。
同样在源库执行导出,在目标库执行导入。
操作速度能得到极大提升。
IMPDP/EXPDP速度主要受限于磁盘,与网络无关。
原数据大小:1.5Gexpdp导出操作用时:5分钟impdp导入操作用时:22分钟导出文件大小:588M导出导入环境:单CPU,700M内存,并行度 = 1你不是说这个会更快么?为什么速度跟3.1的imp/exp差不多啊?请看第四部分总结的解释。
1.4 你还敢再快一点么?使用表空间迁移。
将表空间的元数据导出,和数据文件一起,复制到新库。
执行元数据导入。
一般来说,整个导入导出的数据量不到5M。
速度相当快,但使用限制比较多。
导出时间:1分钟导入时间:3分钟导出文件:60M + 数据文件1.5G1.5 如何将数据从linux环境转到windows环境?查看v$transportable_platform,如果数据编码一致,可尝试直接复制数据文件。
否则使用rman或impdp/expdp或imp/exp。
1.6 如果你有一个excel格式的数据表,需要远程更新到客户数据库上,怎么更新?使用pl/sql developer,复制、粘贴、提交。
1.6 如果你需要将正式库的几张表,迁移到测试库来,怎么弄快些?用dblink+脚本,或者使用impdp远程导入二、局部数据的迁移2.1、广域网的迁移2.1.1 pl/sql developer广域网下小数据量的迁移,常用pl/sql developer工具来完成。
在本地打开excel文件,复制数据。
然后通过“远程桌面”,到远程服务器的pl/sql界面上粘贴,就可以了。
操作简单方便。
第一步:在本地复制数据第二步:打开远程桌面第三步:在远程机器的pl/sql里面粘贴数据第四步:保存数据这种方法在小数据量下很好用。
大数据量时,一个表一个表的粘贴比较麻烦,且一粘贴可能就卡在那里了,得等10来分钟。
2.1.2 imp/exp广域网内大数据量的迁移,通常使用imp/exp工具。
先在源库上使用exp工具,导出数据压缩包,通过网络发送到目标数据库。
在目标数据库上再imp。
第一步:本机连接到源库上,执行expExp一般使用直接路径导出,速度可以达到常规路径导出的3倍以上。
参数解释:Parfile:指定导出的参数配置文件Log:导出日志输出到哪个文件recordlength=65535:设置最大I/O缓冲为64K(该参数最大64K)Direct=y:数据经直接路径导出,不再经SGA导出Owner=testi:仅导出用户testi的数据。
第二步:本机连接到目标库上,执行impParfile:指定导入的参数配置文件Log:导入日志输出到哪个文件Feedback=1000:每导入1000行,在屏幕上输出一个”.”Buffer=10000000:设置导入缓冲区大小Fromuser=testi:仅导入testi用户的数据Touser=testi:将数据导入到新用户testi下。
2.2、局域网内迁移局域网内的数据迁移,方案比较灵活。
常用的方法有:imp/exp、impdp/expdp、dblink+脚本、表空间迁移。
其中imp/exp在2.1.2已有介绍,这里主要介绍其他方法:2.2.1 dblink+脚本2.2.1.1 基本介绍通过dblink将多个分布式数据库连接起来,对外提供统一的服务。
可以实现在一个数据库上,访问多个分布式数据库。
使用“dblink+脚本”的方法来转移数据,配置灵活,但脚本写起来比较麻烦。
需要为每张表单独写脚本。
2.2.1.2 实施方案主要配置分两步:1) 创建数据库连接create database link LINKNAME connect to DBUSER identified by passwordusing '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.9)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME =ORCL)))';2) 执行抽取脚本如:将表B的数据抽取到表A中。
Create table A as select * from B@LINKNAME;对每张需要同步的表分别写脚本。
2.2.2 impdp/expdp2.2.2.1 基本介绍Impdp/expdp就是imp/exp的升级版,在Oracle10g开始引入。
其主要加强功能如下:1) 性能优化,导入导出速度明显提升2) 提供并行执行的能力,加快导入导出速度3) 提供交互式界面,可随时暂停导入导出操作4) 提供多种表加载策略,如:追加、替换、跳过等5) 提供数据库对象间的直接交换功能。
6) 提供导出文件大小估计功能7) 提供导入、导出进度查看功能8) 自动在导出文件目录下生成导入、导出日志文件。
但impdp/expdp也有比较明显的限制。
1) 与imp/exp工具生成的数据包不兼容2) 能远程调用,但导入导出文件必须放到服务器上总体来说,impdp/expdp优势还是很明显的,所以能使用impdp/expdp时,尽量不使用imp/exp。
2.2.2.1 实施方案Impdp/expdp的使用,主要分为三步:1) 创建目录映射在数据库上,创建到操作系统目录的映射:Create directory DMPDIR as‘c:\oracle\dump\’;授予用户USER01对该目录的读写权限:Grant read ,write on directoryDMPDIR toUSER01;2) 执行导出脚本导出:参数解释:Directory:数据文件导出到哪个路径下,这里是指定第一步创建的directory。
Dumpfile:导出文件名Logfile:日志文件名Parallel:设置导出job的并行度,如果对导出速度有较高要求,可设置CPU数 - 1Job_name:为导出job命名SCHEMAS:指定导出哪个用户的数据。
3) 执行数据导入脚本首先仿照第一步,在目标库上创建操作系统目录映射。
然后将第二步的导出文件拷贝到目标数据库对应目录下。
然后执行以下脚本:参数解释:Directory:导入文件所在的路径Dumpfile:导入文件名Logfile:指定生成日志文件的存放位置Parallel:指定操作并行度job_name:指定导入job名称SCHEMAS:指定要导入的用户名REMAP_SCHEMA =TESTI:TESTB:指定将TESTI用户的数据,导入到TESTB用户下TABLE_EXISTS_ACTION=REPLACE:如果要导入的表已经存在,直接替换。
2.2.2.3 界面介绍1) 导出界面可看到整个导出文件,约需要749.5M的存储空间。
当然,expdp也支持只评估空间,不导出数据。
2) 状态查看界面如果想要查看数据导入进度,新开一个窗口,执行以下脚本:>expdp test@target ATTACH=TESTIMP> status2.2.3 表空间迁移2.2.3.1 基本介绍表空间迁移,相当于将一个数据库的文件,直接用U盘拷贝到另一个数据库使用。
虽然这个原理简单,但操作复杂。
这个操作限制比较多:1) 原数据库与目标数据库数据库字符集相同、国家字符集必须相同。
可查看视图v$nls_parameters确认;2) 源库与目标数据库最好是同一Oracle版本;3) 不能搬移SYS和SYSTEM用户对象所在表空间。
2.2.3.2 实施方案表空间的迁移,可以用imp/exp或impdp/expdp来完成,主要分3步:1) 完成表空间集的自包含检查SQL> exec dbms_tts.transport_set_check(‘TBS1’,true);执行完成后,查询:select * from v$transport_set_violations;如果没查出数据,表明可以执行表空间迁移。
否则根据查询结果采取其他方法。
2) 执行表空间导出SQL>alter tablespace users read only;CMD>expdp test@orcl directory=DMPDIR dumpfile=tbs_dmp.dmptransport_tablespace= USERS3) 执行表空间导入将第二步生成的tbs_dmp.dmp文件、表空间USERS对应的数据文件USER01.DBF通过U盘,拷贝到目标库,在目标库上执行导入:CMD> impdp test@orcl directory=DMPDIR dumpfile=tbs_dmp.dmptransport_tablespace=y tablespaces=USERS transport_datafiles=’c:\...\USER0 1.DBF’SQL> alter tablespace users read write;2.2.3.3 界面介绍表空间传输,只是导出表空间的元数据,插入到新库中,因此速度很快。
三、整库迁移整库迁移,一般用于环境的第一次搭建过程中。