oracle数据库迁移版本兼容问题

oracle数据库迁移版本兼容问题
oracle数据库迁移版本兼容问题

在关于不同版本的数据库迁移

目的

在不同版本的数据库之间进行导入和导出的时候存在的兼容性问题。

应用范围

本文用于实现在oracle7,oracle8,oracle8i,oracle9i,oracle10g和oracle11g 数据库上进行的导入/导出功能,也就是说将数据从版本为X的数据库中导出,然后再数据导入到版本为Y的数据库中去。同时也提供了在执行导入/导出功能时,相关的一些版本的使用情况和在进行数据导出的时候需要进行哪些的准备工作。

在不同版本的数据库进行导入和导出的兼容性问题

兼容性概要

1. 用具有导出功能的数据库将数据导出

2. 用具有导入功能的目标数据库将数据导入

3. Export data dump生成的dump文件和由原来的导出工具生成的dump文件不兼容

4. oracle7的导出工具不支持从oracle9i以及更高的版本导出数据

客户端介绍

1. 导出/导入客户端

使用oracle的导出/导入功能我们可以在不同的数据库间进行数据对象的迁移,即使他们所使用的硬件平台和软件配置不一样。

Oracle的导出工具从数据库中提取对象定义以及表数据,把他们存储在一个oracle的二进制导出转存文件里这个文件一般放在磁盘或者磁带当中。我们也可以使用FTP或者物理传输(如果是磁带的话)把这个文件传到另外一个站点中去。导出转存文件在网络中传输时必须以二进制的形式存在。如果导出文件是以字符模式(ASCII)形式传输的话当进行文件导入的时候就会引起错误,这些错误结果可能是IMP-9或者IMP-10 紧接在错误IMP-0后。Oracle的导入工具从导出转存文件中读取数据定义以及表数据然后把这些信息插入到目标数据库中去。

2. 导入/导出数据泵

从oracle 10g 的第一个版本(10.1.1.x)开始,ORACLE引入了导出数据泵(expdp)和导入数据泵(impdp)功能。由导出数据泵创建的导出泵文件只能被导入数据泵所读取,由原来的导出功能创建的导出泵文件是不能被导入数据泵的客户端所读取的。

数据字典视图

1. catexp.sql 脚本

在使用导出/导入功能之前,数据字典必须具备有导出/导入功能所需要的视图。我们可以通过运行以下的脚本来实现:

—— unix:

SQL> connect / as sysdba

SQL>@$ORACLE_HOME/rdbms/admin/catexp.sql

——windows:

SQL>connect / as sysdba

SQL>@%ORACLE_HOME%\rdbms\admin\catexp.sql

脚本CATEXP.SQL必须由用户SYS来执行,这个脚本也可以被脚本CATALOG.SQL自动调用。CATEXP.SQL和CATALOG.SQL这两个脚本在数据库中只需要执行一次,通常在运行导出/导入之前我们没有必要再执行这些脚本了(如果需要的视图不正确会出现错误EXP-24或者IMP-23)。

脚本CATEXP.SQL执行完成的是以下的任务:

l 创建数据字典需要的导出/导入视图

l 创建角色EXP_FULL_DATABASE 和IMP_FULL_DATABASE

l 分配合适的权限给角色EXP_FULL_DATABASE 和IMP_FULL_DATABASE

l 把EXP_FULL_DATABASE 和IMP_FULL_DATABASE 分配给角色DBA

2. 脚本catexp7.sql

当使用Oracle7 导出客户端从oracle8/8i 数据库创建oracle7 导出文件,用户SYS必须在oracle8/8i上运行CATEXP7.SQL:

——unix:

SQL> connect / as sysdba

SQL>@$ORACLE_HOME/rdbms/admin/catexp7.sql

——windows:

SQL>connect / as sysdba

SQL>@%ORACLE_HOME%\rdbms\admin\catexp7.sql

这个脚本创建的导出视图使得oracle8/8i的导出看起来和oracle7的一样,这就意味着在这些视图里是不会看到oracle8/8i 特定的对象,这样的导出文件在oracle7中可以正常的导入。

脚本CATEXP.SQL和CATEXP7.SQL 只需要被执行一次。

CATEXP.SQL 创建在Oracle8/8i/10g/11g导出客户端需要使用的exu8%视图,CATEXP7.SQL创建在Oracle 7 导出端需要使用的exu7%视图。如果这两个脚本已经被SYS 执行过了,我们就不需要再执行一次。

以上提到的方法也同样适用于从Oracle7数据库中创建一个Oracle6导出文件,我们只需要使用SYS用户在Oracle7数据库中运行CATEXP6.SQL脚本就可以了。

需要注意的是:Oracle不支持使用Oracle7导出客户端对Oracle9i数据库进行导出:在向后兼容时,我只支持向后兼容一个版本,这说明了我们同样也不能使用Oracle8导出客户端对Oracle10数据库进行导出(现在只支持使用Oracle8i 8.1.7或者更高版本的导出客户端对oracle10g数据库进行导出和使用Oracle9i 9.2.0导出端对oracle11g数据库导出)

使用全库导出/导入进行数据库迁移

1. 关于直接升级的约束

如果我们使用全库导出/导入的方法将数据库升级到Oracle9i,oracle10g,或者oracle11g,有一个关于直接升级的约束,当然这只是在我们将FULL 模式(FULL=Y)底下导出的export dump file在FULL 模式的数据库里导入时候才有的。

需要注意的是:从技术角度上一个导入端是可以将由oracle 5.1.22及其更高版本的数据库导出的export dump files 进行导入,所谓的升级约束是指在升级手册上说明的可能升级路径。支持从一个主要版本的最终

版(oracle 8i 8.1.7)直接迁移到另外一个主要版本(oracle 9i 9.2.0)是因为8.1.7是8i的最后一个版本。

7.3.4是oracle7的最后一个版本

8.0.6是oracle8的最后一个版本

8.1.7是oracle8i的最后一个版本

9.2.0是oracle9i的最后一个版本

10.2.0是oracle10g的最后一个版本

2. 迁移到oracle 9i版本2(9.2.0.x.0)

当源数据库是以下的情况我们可以使用全库导出/导入进行直接的迁移

Migration possible from … to oracle 9i Release 2 (9.2.0.x.0);

Oracle7 :7.3.4 (7.3.4.5.0 recommended)

Oracle8 :8.0.6 (8.0.6.3.0 recommended)

Oracle8i Release3 :8.1.7.4.0

Oracle9i Release1 :9.0.1.4.0 (9.0.1.5.0 for iAS infrastructure)

3. 迁移到Oracle10g 版本1(10.1.0.x.0)

当源数据库是以下的情况我们可以使用全库导出/导入进行直接的迁移4. 迁移到Oracle10g 版本2(10.2.0.x.0)

当源数据库是以下的情况我们可以使用全库导出/导入进行直接的迁移Migration possible from … to oracle 9i Release 2 (9.2.0.x.0);

Oracle7 :7.3.4 (7.3.4.5.0 recommended)

Oracle8 :8.0.6 (8.0.6.3.0 recommended)

Oracle8i Release3 :8.1.7.4.0

Oracle9i Release1 :9.0.1.4.0 (9.0.1.5.0 for iAS infrastructure)

Migration possible from … to oracle 10g Release 1 (10.1.0.x.0);

Oracle8 :8.0.6 (8.0.6.3.0 recommended)

Oracle8i Release3 :8.1.7.4.0

Oracle9i Release1 : 9.0.1.4.0 (9.0.1.5.0 for Ias infrastructure)

Oracle9i Release2 : 9.2.0.4.0 (9.2.0.8.0 recommended)

Migration possible from … to oracle 10g Release 2 (10.2.0.x.0);

Oracle8i Release3 :8.1.7.4.0

Oracle9i Release1 : 9.0.1.4.0 (9.0.1.5.0 for Ias infrastructure)

Oracle9i Release2 :9.2.0.4.0(9.2.0.8.0 recommended)

Oracle10g Release1 :10.1.0.2.0(10.1.0.5.0 recommended)

Oracle9i Release2 : 9.2.0.4.0 (9.2.0.8.0 recommended)

5. 迁移到Oracle11g Release 1(11.1.0.x.0)

当源数据库是以下的情况我们可以使用全库导出/导入进行直接的迁移6. 范例

1. 从8.1.7.4.0迁移到9.

2.0.8.0

—使用8.1.7.4.0导出客户端运行全库导出

—使用9.2.0.8.0导入客户端运行全库导入

2. 从8.0.5.0.0迁移到10.2.0.4.0

—升级8.0.5.0.0数据库到8.0.6.0.0(推荐用8.0.6.3.0)

—迁移8.0.6.x数据库到9.2.0.4.0(推荐用9.2.0.8.0)

—使用9.2.0.x导出客户端运行全库导出

—使用10.2.0.4.0导入客户端运行全库导入或者我们使用8.0.5.0.0导出客户端做一个全库的导出,在10g 数

据库里预先定义好用户.然后用10.1.0.2导入客户端进行schema级的导入。

注意:不支持用8.0.5.0.0的导出客户端做全库的导出,然后用10.1.0.2做全库的导入。

3. 从9.2.0.1迁移到11.1.0.6.0

—运行9.2.0.4.0的补丁包(推荐用9.2.0.8.0)

—使用9.2.0.8.0的导出客户端做一个全库导出

—使用11.1.0.6.0的导入客户端做一个全库导入

导入导出工具的兼容性

1. 导出工具

提示:

当把export dump file导入到一个更高版本的数据库中去(比如:把oracle 8i的导入到oracle9i),我们使用的导出工具的版本和源数据库的版本一样(在这个例子里等于oracle8i)如果使用更高版

Migration possible from … to oracle 10g Release 1 (11.1.0.x.0);

Oracle9i Release2 :9.2.0.4.0(9.2.0.8.0 recommended)

Oracle10g Release1 :10.1.0.2.0(10.1.0.5.0 recommended)

Oracle10g Release2 : 10.2.0.1.0 (9.2.0.8.0 recommended)

导出端的兼容:

通常导出端的版本和源数据,目的数据库中版本低的一个一样本的导出工具,导出会发生错误。举个例子:你用9.0.1的导出工具从8.1.7版本的数据库导出会出现下面的错误:

l 当你要把export dump file导入到一个更低版本的数据库中去

(比如:把oracle 9i 的导入到oracle8i), 导出工具的版本应

该和目的数据库的版本一样(在这个例子里是使用oracle8i)。

l 当你从oracle7的数据库中创建oracle6的导出文件,SYS用户要先在oracle7 的数据库上执CATEXP6.SQL 脚本。这个脚本创建的导出视图,让我们感觉就在oracle6数据库上进行导出

l 同理当你从oracle8的数据库中创建oracle7的导出文件,SYS用户要先在oracle7 的数据库上执行CATEXP7.SQL 脚本。这个脚本创建的导出视图,让我们感觉就在oracle7数据库上进行导出

l 当你从oracle9i 的数据库中创建oracle8/8i 的导出文件时,不需要在oracle9i 数据库上去运行oracle8i 版本的catexp.sql脚本。你只需要在oracle9i 上执行8i exp executable 。需要知道的是:在oracle9i 的几个特性是不被支持的。

2. 升级包

安装了升级包后数据字典的导出视图就会被改变,所以不能使用已经升级的导出工具去对还没升级的数据库进行导出。

比如:用9.2.0.5的导出工具去导出9.2.0.1的数据库的时候回出现这样的错误:

要想成功的将9.2.0.1数据库导出,应使用9.2.0.1导出工具而不是9.2.0.2或者更高版本的。

3. 导入端

EXP-00056 Oracle error 942 encountered

ORA-00942 table or view does not exist

EXP-00000 export terminated unsuccessfully

EXP-00008:ORACLE error 942 encountered

ORA-00942: table or view does not exist

EXP-00024: Export views not installed, please notify your DBA

EXP-00000: Export terminated unsuccessfully

导入端的兼容性:

一般导入工具的版本和目标数据库的版本是一样的

约束

1. 导出/导入的特性和约束

下面是导出/导入客户端的一些约束

Oracle 导出转存文件只能被oracle 导入客户端读取,因为这些转存文件以特定的oracle二进制的格式存储的。所有的导出转存文件都可以导入到一样或者更高版本和打过补丁的数据库中去导出转存文件不能被比他更早以前版本的导入客户端导入。比如:10gR2(10.2.0.x)导出转存文件不能被10gR1(10.1.0.x)导入端导入(会出现ORA-10.2.0.x 错误)导入端可以读取从5.1.22到和导入端一样版本之间的任意版本导出的export dump 文件。

Oracle6(或者更早版本)导出客户端不能被用来导出oracle8或者oracle8i更高版本的数据库。

如果用一个低版本的导出客户端对高版本的数据库进行导出,在低版本中不存在的对象类型是不会被导出

的。比如:partitionedtable就不会被oracle7的导出端导入,如果你要把版本8的数据库中的partitioned table 放到版本7中去,那么在放入前会把这些表重组合成non-partitioned table.

2. 把数据导入到oracle8或者更低版本的数据库中去

表1:把数据导入到oracle8或者更低版本的数据库我们可以使用什么版本的导出客户端

提示:

1)导入客户端可以读取由5.1.22或者更高版本(最高到和导入端版本一样)的导出端导出的export dump 文件

2)从Oracle7导出然后导入到oracle6数据库中:用户SYS必须先在oracle7的数据库上运行CATEXP6.SQL 脚本(这个脚本只需要在创建版本6视图的时候运行一次就可以了)。

3)把从Oracle8,Oracle8i导出的数据导入到Oracle7的数据库中:用户SYS必须在Oracle8,Oracle8i 数据库上运行CATEXP7.SQL脚本(这个脚本只需要在创建版本7视图的时候运行一次就可以了)。

4)只有oracle8版本(8.0.6)的终端才在oracle9i数据库中被支持:使用oracle8导出客户端将数据oracle9i 数据库中导出然后导入到8.0.6数据库中去。

6.3 导入数据到Oracle8i 或者更高版本的数据库中

图2:当导入到oracle8以及更高版本的时候采用的导出客户端版本

提示:

1)导入客户端可以读取由5.1.22或者更高版本(最高到和导入客户端的版本一样)导出的dump 文件2)Oracle7导出转存和oracle8/oracle8i/oracle9i导入:如果TO_DATE功能在约束中没有被使用那么数据列的检查约束会失效(这个在早期的版本是没有要求的)

3)为了在oracle10g或者更高的版本之间进行导入/导出的性能和灵活性更好,建议使用Expot data dump (expdp)和Importdata pump(impdp)客户端。

范例

范例1:从7.3.4导出然后导入到8.1.7

使用7.3.4导出客户端把数据从7.3.4的源数据库中导出

使用8.1.7导入客户端把数据导入到8.1.7目的数据库中

范例2:从9.2.0.8导出然后导入到9.2.0.8

使用9.2.0.8导出客户端把数据从9.2.0.8的源数据库中导出

使用9.2.0.8导入客户端把数据导入到9.2.0.8目的数据库中

范例3:从9.2.0导出然后导入到8.1.7

使用8.1.7导出客户端把数据从9.2.0的源数据库中导出

使用8.1.7导入客户端把数据导入到8.1.7目的数据库中

范例4:从8.1.7.4导出然后导入到11.1.0.6

使用8.1.7.4导出客户端把数据从8.1.7.4的源数据库中导出

使用11.1.0.6导入客户端把数据导入到11.1.0目的数据库中

范例5:从9.2.0导出然后导入到7.3.4不被支持;但是有如下变通的方案

使用8.1.7.4导出客户端把数据从9.2.0源数据库中导出

使用8.1.7.4的导入客户端把数据临时的导入到8.1.7.4.0数据库中

为了创建Oracle7数据字典视图需要在8.1.7.4数据库上运行CATEXP7.SQL脚本(如果以前运行过就不需要再运行了)

使用7.3.4导出客户端从临时的8.1.7.4数据库中把数据导出

使用7.3.4导入端把数据导入到7.3.4数据库

范例6:从7.3.4 导出然后导入到11.1.0

使用7.3.4导出客户端把数据从7.3.4数据库中导出

使用11.1.0导入端把数据导入到11.1.0数据库中

需要注意的是不支持使用FULL=Y模式导出和FULL=Y模式导出的迁移

范例7:从10.1.0.5导出然后导入到10.2.0.4

使用10.1.0.5导出数据泵客户端(expdp)把数据从10.1.0.5数据库导出

使用10.2.0.4导入数据泵客户端(impdp)把数据导入10.2.0.4数据库中可能出现的出错信息

1. EXP-3(找不到XX段的存储定义)

原因:找不到集群/索引/表的存储定义。

方法:记录下错误信息,作为内部导出错误报告

建议:参考Note 274076.1:“EXP-0003 当使用早于9.2.0.5.0版本的导出客户端从9.2.0.5.0或者更高的版本进行导出”

2. EXP-24(没安装导出视图,请通知DBA)

原因:没有安装必要的导出视图

方法:让数据库管理员安装需要的导出视图

3. EXP-37(导出视图和数据库的版本不兼容)

原因:导出工具的版本比数据库版本高,所以不兼容

方法:使用和导出数据库一样版本的的导出工具

4. IMP-0 (导入终止)

原因:发生错误

方法:检查错误信息然后采取合适的措施

5. IMP-9(导出文件的异常结束)

EXP-0003:no storage definition found for segment (%lu , %lu)

EXP-00024:Export views not installed ,please notify your DBA

EXP-00037:Export views not compatible with database version

IMP00000:Import terminated unsuccessfully

IMP-00009:Abnormal end of of export file

原因:这通常是由一个被取消的导出会话生成的导出文件引起的

方法:检查这个文件是否是二进制模式。如果这个导出文件是由一个被取消的导出会话生成的,重新尝试导入这个导出文件,或者把他作为一个导入错误报告。

6. IMP-10(不是一个有效的导出文件,文件头部错误)

原因:可是这个文件不是利用导出工具导出的文件,或者这个导出文件被破坏了。

方法:检查这个文件是否二进制模式。如果这个文件确实是由导出工具导出的而且没有兼容性的问题,把它作为一个导出错误报告。

7. IMP-21 (操作系统错误—错误代码(XXX))

原因:操作系统错误。这个错误可能和IMP-10或者IMP-69同时出现。

方法:根据错误代码查看操作系统手册然后采取合适的措施,如果错误IMP-10或者IMP-69一起出现的话需要检查下兼容性的问题。

8. IMP-23(导入视图没有安装,请通知DBA)

原因:导入视图没有安装

方法:通知DBA安装导入视图

9. IMP-69(不能切换到环境国际字符集的处理)

原因:内部错误

方法:联系支持

IMP-10:Not a valid export file, header failed verification

IMP-00021:Operating system error —error code (dec %lu, hex 0x%x)

IMP-23:Import views not installed, please notify your DBA

IMP-00069:Could not convert to environment national character set?shandle

1. 权限

要使用导出客户端你必须在oracle 数据库上有CREATRE SESSION这个权限。如果要导出其他用户的表,你必须启动EXP_FULL_DATABASE这个角色,这个角色被授给DBA用户。

2. Oracle NET, Oracle Net8 和SQL*NET如果想在新版本的数据库上使用早期版本的导出客户端,你要使用SQL*NE,Net8或者Oracle NET来访问这个数据库。

3. 直接路径导出

如果要在Oracle8i或者更高版本的数据库上使用Oracle7或者更低版本的导出客户端,必须使用默认的传统路径导出(不要在导出命令程序里设置DIRECT=YES)一个传统的路径导出使用SQL SELECT语句把数据从表中提取出来而直接路径导出是饶过不使用SQL命令程序去直接读取数据(要考虑缓存大小)。

需要注意的是当你在Oracle8i或者更高版本的数据库上使用8.0版本的导出端同时你还设置了直接路径加载(DIRECT=Y)那么导出客户端是不能从包含对象和LOB?S的表中导出行。

4. 导出数据转存和导入数据转存

我们已经介绍了在Oracle10g 版本1(10.1.0.x)新引入的的导出数据转存(expdp)和导入数据转存(impdp)。在未来的版本里原有的导出端(exp)会渐渐的被淘汰由expdp代替,原有的导入客户端会依然被使用来支持由原有的客户端创建的导出转存文件(比如:由oracle9i创建的导出文件)。

5. 导出/导入视图版本

如果想知道导出/导入视图版本你可以通过使用以下的语句查询

sys.props$表:

不同的EXPORT_VIEWS_VERSION 值有不同的意思:

%exp /@……..

SQL> SELECT * FROM sys.props$ WHERE name LIKE …EXPORT%?;

NAME VALUES COMMENT$

------------------------------------ -------- ----------------------- ------------

EXPORT_VIEWS_VERSION 8 Export views revision #

EXPORT_VIEWS_VERSION

Value Introduced in Release

*)7.0.*

1 7.1.3

2 7.2.1

4 8.0.1

5 8.0.2

6 8.0.3

7 8.0.4

8 8.1.6

关于NLS_LANG 环境变量在导出/导入中的影响我们可以参考下面的FAQ:

Note 227332.1 “ 在导出/导入时要考虑的NLS问题—这是经常被问到的问题”

参考

Note 1012189.6—当试图去导入已经被转移的导出文件是会发生错误

Note 120607.1—ALERT:oracle(8.1.7)支持状态显示和警报

Note 149018.1—ALERT:oracle9i(9.0.1)支持状态显示和警报

Note 155477.1—DIRECT参数:传统的路径导出和直接路径导出

Note 189908.1—ALERT:oracle9i版本2(9.2)支持状态显示和警报

Note 207303.1—客户端/服务器段/不同的oracle版本的相互支持

Note 227332.1—导出导入时要考虑NLS问题—这是经常被问到的问题

Note 263719.1—oracle10g版本1(10.1)支持状态显示和警报

Note 277650.1—跨平台或者32、64位传输数据时怎样使用导出/导入

Note 291024.1—用导出/导入进行转移表空间的兼容性及一些新特性

Note 316900.1—oracle10g版本2(10.2)支持状态显示和警报

Note 345187.1—过时的特性—原来的导出端10.2

Note 454507.1—oracle11g版本1(11.1)支持状态显示和警报

Note 50220.1—ALERT: oracle7.3.4支持状态显示和警报

Note 55337.1—导出/导入数据转存参数VERSION—不同版本数据库之间的数据转存兼容Note 61949.1—Oracle7导出/导入概述

Note 72529.1—ALERT:oracle8.0.6支持状态显示和警报

Note 76542.1—NT:从Oracle8导出然后导入到oracle7

错误

PLS—302 “%s”组件必须被申明

EXP—3 “没有发现(%lu,%lu)段的存储定义”

EXP—56 placeholder for OCI error

EXP—24 “导出视图没安装,请通知DBA”

EXP—8 发生ORACLE %lu 错误

EXP—0 导出非正常终止

EXP—37 导出视图和数据库的版本不兼容

IMP—23 导入视图没有安装,请通知DBA

IMP—10 导出文件无效,文件头错误

IMP—0 导入非正常终止

IMP—21 操作系统错误,错误代码是(dec,%lu,hex 0x%x)IMP—9 导出文件的非正常结束

IMP—69 不能转换到环境国际字符集的处理端ORA—942 表或视图不存在

ORA—2248 ALTER SESSION 的无效选项

ORA—6550 行,列<>num:

ORACLE数据备份与数据恢复方案

O R A C L E数据备份与数据恢 复方案 Prepared on 24 November 2020

摘要 结合金华电信IT系统目前正在实施的备份与恢复策略,重点介绍电信业务计算机管理系统(简称97系统)和营销支撑系统的ORALCE数据库备份和恢复方案。 Oracle数据库有三种标准的备份方法,它们分别是导出/导入 (EXP/IMP)、热备份和冷备份。要实现简单导出数据(Export)和导入数据(Import),增量导出/导入的按设定日期自动备份,可考虑,将该部分功能开发成可执行程序,然后结合操作系统整合的任务计划,实现特定时间符合备份规划的备份应用程序的运行,实现数据库的本级备份,结合ftp简单开发,实现多服务器的数据更新同步,实现数据备份的异地自动备份。 关键字:数据库远程异地集中备份 目录

一、前言 目前,数据已成为信息系统的基础核心和重要资源,同时也是各单位的宝贵财富,数据的丢失将导致直接经济损失和用户数据的丢失,严重影响对社会提供正常的服务。另一方面,随着信息技术的迅猛发展和广泛应用,业务数据还将会随业务的开展而快速增加。但由于系统故障,数据库有时可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如做了备份,恢复数据就显得很容易。由此可见,做好数据库的备份至关重要。因此,建立一个满足当前和将来的数据备份需求的备份系统是必不可少的。传统的数据备份方式主要采用主机内置或外置的磁带机对数据进行冷备份,这种方式在数据量不大、操作系统种类单一、服务器数量有限的情况下,不失为一种既经济又简明的备份手段。但随着计算机规模的扩大,数据量几何级的增长以及分布式网络环境的兴起,将越来越多的业务分布在不同的机器、不同的操作平台上,这种单机的人工冷备份方式越来越不适应当今分布式网络环境。 因此迫切需要建立一个集中的、自动在线的企业级备份系统。备份的内容应当包括基于业务的业务数据,又包括IT系统中重要的日志文件、参数文件、配置文件、控制文件等。本文以ORACLE数据库为例,结合金华电信的几个相关业务系统目前正在实施的备份方案,介绍ORACLE数据库的备份与恢复。 二、金华电信ORACLE数据库的备份与恢复方案 由于金华电信IT系统以前只采用逻辑备份方式进行数据库备份,速度较慢并且数据存储管理都很分散,甚至出现备份数据不完整的现象。为了提高备份数据的效率,提供可靠的数据备份,完善备份系统,保证备份数据的完整性,降低数据备份对网络和服务器的影响,对每个IT系统的备份数据进行集中管理,我们对备份工作进行了改进,将逻辑备份与物理备份相结合,在远程建立了一个异地集中、自动在线的备份系统即网络存储管理系统。(这里用到的物理备份指热备份)其具备的主要功能如下:(1)集中式管理 :网络存储备份管理系统对整个网络的数据进行管理。利用集中式管理工具的帮助,系统管理员可对全网的备份策略进行统一管理,备份服务器可以监控所有机器的备份作业,也可以修改备份策略,并可即时浏览所有目录。所有数据可以备份到同备份服

oracle大数据库升级迁移实施参考方案设计

数据库系统和网络存储系统项目 数据库迁移实施方案 文案大全

文档控制 文档修订记录 版本编号变化状态简要说明日期变更人批准日期批准人 V1.0 A 创建文档2010/05 XXX V1.1 M 修改2010/05/18 XXX 审阅 序号姓名职位 分发 序号.姓名地点 文案大全

目录 第一章文档介绍 (5) 1.1背景 (5) 1.2目标 (6) 第二章系统硬件选型 (7) 2.1存储设备 (7) 2.1.1 设备选型 (7) 2.1.2 设备功能及实现 (7) 2.2服务器设备 (7) 2.1.1 数据库服务器 (7) 第三章系统安装 (10) 3.1主机系统安装 (10) 3.2配置SAN网络、磁盘阵列 (11) 3.3配置HACMP (12) 3.4安装数据库软件 (13) 第四章数据移植 (14) 4.1移植准备工作 (14) 4.2移植过程 (15) 4.3系统检查 (16) 数据库检查 (16) 导入后系统需要完成的工作 (16) 应用检查 (17) 4.4系统回退 (17) 第五章应用迁移 (18) 第六章新系统上线后的工作 (18) 第七章工作界面和工作内容 (18) 第八章实施计划 (19) 附件: ............................................................................. 错误!未定义书签。 1.设备、软件验收交付记录.................................................. 错误!未定义书签。文案大全

带有oracle数据库的数据迁移方案

数据迁移技术方案 项目背景 某信息中心系统本次机房搬迁以及数据迁移工程是本次项目需完成的重点工作,包括整个信息中心的核心数据及业务交换中心,系统现有设备包括:核心交换机、接入交换机、服务器、存储盘阵等,迁移主要分设备迁移和数据迁移。系统搬迁具有时间短、系统结构复杂、测试时间长、设备繁多昂贵、人员多、层次复杂等特点。本项目搬迁迁移,时间非常紧,且对设备的稳定性也是一个考验。因此,必须协调好各单位人员的关系,齐心协力才可能在预定时间内完成搬迁迁移工程。 整个迁移工作分两步走,第一步先对数据进行迁移,数据迁移完成确认无误。第二步对整体信息中心所有设备进行迁移,确保所有设备正常运行。 本方案是以尽量不影响信息中心工作或将影响降低到最低为前提的情况下制定的,即先完成新机房网络接入后,确保网络畅通稳定的前提下,完成信息中心系统业务的部署,确保整个系统在新机房业务实现,整个业务系统顺利割接,然后再在特定时间点开始原机房的设备搬迁工作,在1-2工作日内完成整个服务器、网络设备的搬迁、安装及测试。并且在开机以后,继续跟踪系统的运行情况,随时处理系统运行的异常情况。我公司在资源方面有较大优势,如在搬迁迁多工作中出现设备故障,除在备品备件中提供的备件外,还可协调各方资源以最快速度解决客户设备故障问题。

系统环境 第一机房环境 ( 设备分布 第一机房设备共涉及到10个机柜,具体设备名称及数量为:38台pvg server(1810/2800)汇聚服务器、4台pvg server3800核心服务器、26台存储、1台存储控制服务器、5台交换机。 硬件设备情况 汇聚服务器 汇聚服务器品牌为网力产品,38台中32台设备作为汇聚服务器,每台设备使用2个网卡:1个网卡接入单位、另1个网卡接入存储服务器;另外6台为出口服务,只使用1个网卡。设备网口全部接到RG-6806/6810两台交换机上,以便与单位和存储设备通讯。总电口使用量为:32*2+6=70个。 核心服务器 核心服务器品牌为网力产品,4台该设备中2台为负责汇总个单位,另外2台为出口服务。每台设备使用1个网口,网口接到RG-6806/6810上。总电口使用量为:1*4=4。 存储 [ 存储品牌为XX以及部分老存储设备,存储共涉及到17台设备:1台控制器、16台存储。控制服务器使用1个网卡,接入到RG-6810上。16台存储各使用2个网口,每台存储对应两台汇聚服务器,设备网口接入到RG-6810/6806上。总电口使用量为:16*2+1=33个。 交换机

Oracle10g的数据迁移方案

Oracle10g的数据迁移方案 2009-03-27 08:18 Lora是Acme银行的数据库管理员,她现在在该银行高层管理团队高级会议上成了大家最关注的核心人物。这次会议的目的是确定一些方法,来使最终用户能够详细分析公司主数据仓库中的数据。会上提出的一种想法是创建几个小型数据集市--每个集市根据一个特定的职能范围存储数据--这样每个数据集市就可以由专门的团队来使用。 为了有效地实现数据集市的方法,数据专家必须能将数据快速、有效地放入数据集市中。该团队面临的挑战就是解决如何用数据仓库中的数据快速刷新数据集市中的数据,而这些数据集市又运行在各个结构不同的平台上。这就是Lora为什么出席会议的原因。她会为移动数据提出哪些可供选择的方法呢? 作为一名经验丰富、知识渊博的数据库管理员,Lora向与会者提供了三种可能的方法,分别是: 使用可移动表空间 使用数据泵(导入和导出) 拖出表空间 本文介绍Lora对这三种可选方法的解释,包括它们的实施细节和优缺点。 可移动表空间 Lora从可移动表空方法开始介绍。把整个表空间移动到目标系统的最快速方法是用FTP(文件传输协议)或rcp(远程复制)来简单地转移表空间的基本文件。但是,仅仅复制Oracle数据文件还不够,目标数据库必须识别出并导入文件以及相应的表空间,最终用户才能使用表空间数据。使用可移动表空间包括复制表空间文件和使它们中的数据在目标数据库中可用。 在考虑该方法之前必须进行一些审查。首先,对于要转移到目标系统的表空间TS1,它必须是自含式的(self-contained)。也就是说,在该表空间中表的所有索引、分区及其他从属于该表的各数据段都必须在该表空间内部。Lora解释说,如果一个表空间集合包含所有从属的数据段,那么就认为这个集合是自含式的。例如,如果表空间TS1和TS2要作为一个集合进行转移,TS1中的一个表在TS2中有一个索引,则这个表空间集合就是自含式的。但是,如果TS1中的一个表另一个索引在表空间TS3中,则该表空间集合 (TS1, TS2)就不是自含式的。 要移动表空间,Lora提议使用Oracle数据库10g中的数据泵导出(Data Pump Export)工具。数据泵是Oracle的新一代数据转移工具,它替换了早期的Oracle Export (EXP)和Import (IMP)工具。这些老的工具使用正则SQL来提取和插入数据,而数据泵则与它们不同,它使用能绕过SQL缓冲区的专用API,从而使操

Oracle 11G 数据库迁移手册

客户的数据库采用expdp命令导出的,这是Oracle10g以后采用的新的导出方式,比exp 执行效率上有所提高。下面说明如何做导入导出: 1、环境变量设置(在Sqlplus中执行) create or replace directory as ‘c:\tmpdir’; 注:c:\tmpdir也可以是另外的随意目录,用单引号括起来 2、导出ARADMIN库 expdp /@ directory= dumpfile=xxxxxx.dat logfile=xxxx.log schemas=ARADMIN; 3、如果需要备份(通常不需要)CMDB WebService则导出AtriumAdmin库 expdp /@ directory= dumpfile=xxxxxx.dat logfile=xxxx.log schemas=ARADMIN; 4、导出成功后,把dat和log文件都拷贝到目标数据库服务器上,记住两个文件的放 置路径 5、目标库导入前操作 create or replace directory as ‘c:\tmpdir’; 注:此处的c:\tmpdir替换成两个文件的存放路径 Sqlplus登录目标库(一定要用管理员账号); sqlplus /@ as sysdba; 核对连接的库名: show parameter name; 查看连接的是哪个SID; select username from dba_users order by created;查看所有表空间命令的最后两行应该有ARADMIN和ATRIUMADMIN表空间名;

Oracle数据库的数据迁移方法

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

按照确定的数据迁移方案,正式实施数据迁移。 测试数据迁移效果 按照数据迁移测试方案测试数据迁移效果,并对数据迁移后的数据库参数和性能进行调整,使之满足数据迁移后实际应用系统的需要。 移植系统应用软件 将实际应用系统的应用软件移植到数据迁移后的数据库系统上,并使之正常运行。 正式运行应用系统 在正式实施数据迁移成功并且数据库参数和性能达到要求后,就可以正式运行应用系统,并投入实际使用。 实现向Oracle8i数据迁移

Oracle向Mysql迁移方案

Oracle向Mysql迁移方案 一、可自动迁移部分; 1、表 这个部分的移植是最容易用工具实现的部分,因为很多MySQL的图形管理工具都自带这样的移植工具,比如SQL Yog,MySQL Administrator等。但是,这些工具的移植能力各有不同,对字段类型转换﹑字符集等问题都有自己的处理方式,使用时请注意。 笔者使用“SQL Yog Migration Toolkit”工具按提示步骤移植后,表的主要结构和数据将成功移植,主要包括表的字段类型(经过映射转换,比如number会转换为int,Varchar2会转换为Varchar,date转换为datetime等,请小心处理日期字段的默认值等),表的主键,表的索引(Oracle的位图索引会被转成BTree索引,另外表和字段的注释会丢失)等信息。 注意的是,Oracle的自增字段的处理。大家知道,Oracle通常使用序列sequence 配合触发器实现自增字段,但是MySQL和SQL Server等一样,不提供序列,而直接提供字段自增属性。所以,请把Oracle里面的自增字段实现直接改为MySQL的字段属性,而且,这个字段必须是主键(key)并且不能有默认值。还有一个问题,如果您的应用要直接使用Oracle的某个序列,那么您只能在MySQL里面模拟实现一个,具体方法就是利用MySQL的自增字段实现的。 二、不可自动迁移部分; 视图、过程、函数、触发器 以上对象都是写sql语句进行编程的,两个数据库的有些语法是不一新的,所以这些都要开发人员进行人工修改在mysql中重新创建; 语法区别如下: 视图:mysql中视图不能有子查询,可以把字查询再建一个视 图; 触发器:mysql中触发器中before或after的触发事件(insert、 update、delete)只能有一个,oracle可以有多个; 字符串拼接:oracle直接用’||’,mysql只能用函数’concat’; 判断是否为空:oracle用nvl;mysql用ifnull; 变量定义:oracle可以只写一次DECLARE,Mysql需要在每句前面加 DECLARE 变量赋值:oracle用’:=’,mysql用’=’; 三、Oracle与Mysql几个主要根本区别 1、oracle中的包在mysql中不存在,要全部改成普通的存储过程; 2、用户及权限在oracle中是包含在各自的数据库里,而在mysql是数据库的用户及权 限在一个单独的数据库中(information_schema); 3、Oracle是没有敏感字段,是mysql有,如果有要修改成长非敏感名字; 4、系统架构区别:oracle有主备库,和集群架构(RAC)且RAC是基共享存储的, Mysql有主从复制,和集群架构(ndbcluster),但ndbcluster是非共享 存储的。 四、建立迁移测试环境; 五、迁移实施;

带有oracle数据库的数据迁移方案精编版

数据迁移技术方案 一、项目背景 某信息中心系统本次机房搬迁以及数据迁移工程是本次项目需完成的重点工作,包括整个信息中心的核心数据及业务交换中心,系统现有设备包括:核心交换机、接入交换机、服务器、存储盘阵等,迁移主要分设备迁移和数据迁移。系统搬迁具有时间短、系统结构复杂、测试时间长、设备繁多昂贵、人员多、层次复杂等特点。本项目搬迁迁移,时间非常紧,且对设备的稳定性也是一个考验。因此,必须协调好各单位人员的关系,齐心协力才可能在预定时间内完成搬迁迁移工程。 整个迁移工作分两步走,第一步先对数据进行迁移,数据迁移完成确认无误。第二步对整体信息中心所有设备进行迁移,确保所有设备正常运行。 本方案是以尽量不影响信息中心工作或将影响降低到最低为前提的情况下制定的,即先完成新机房网络接入后,确保网络畅通稳定的前提下,完成信息中心系统业务的部署,确保整个系统在新机房业务实现,整个业务系统顺利割接,然后再在特定时间点开始原机房的设备搬迁工作,在1-2工作日内完成整个服务器、网络设备的搬迁、安装及测试。并且在开机以后,继续跟踪系统的运行情况,随时处理系统运行的异常情况。我公司在资源方面有较大优势,如在搬迁迁多工作中出现设备故障,除在备品备件中提供的备件外,还可协调各方资源以最快速度解决客户设备故障问题。

二、系统环境 1、第一机房环境 1.1. 设备分布 第一机房设备共涉及到10个机柜,具体设备名称及数量为:38台pvg server(1810/2800)汇聚服务器、4台pvg server3800核心服务器、26台存储、1台存储控制服务器、5台交换机。 1.2. 硬件设备情况 1.2.1汇聚服务器 汇聚服务器品牌为网力产品,38台中32台设备作为汇聚服务器,每台设备使用2个网卡:1个网卡接入单位、另1个网卡接入存储服务器;另外6台为出口服务,只使用1个网卡。设备网口全部接到RG-6806/6810两台交换机上,以便与单位和存储设备通讯。总电口使用量为:32*2+6=70个。 1.2.2核心服务器 核心服务器品牌为网力产品,4台该设备中2台为负责汇总个单位,另外2台为出口服务。每台设备使用1个网口,网口接到RG-6806/6810上。总电口使用量为:1*4=4。 1.2.3存储 存储品牌为XX以及部分老存储设备,存储共涉及到17台设备:1台控制器、16台存储。控制服务器使用1个网卡,接入到RG-6810上。16台存储各使用2个网口,每台存储对应两台汇聚服务器,设备网口接入到RG-6810/6806上。总电口使用量为:16*2+1=33个。 1.2.4交换机 交换机品牌为锐捷及H3C。共涉及到5台交换机:RG-6810、RG-6806、RG-7610、H3C 7506、H3C 7506E。设备端口及板卡信息为:

Oracle数据库迁移的几种方式

Oracle数据库迁移的几种方式 我们常常需要对数据进行迁移,迁移到更性能配置更高级的主机OS上、迁移到远程的机房、迁移到不同的平台下,以下介绍ORACLE的几种数据库迁移方案: 一、exp/imp逻辑备份与恢复: 它是最常用最简单的方法,一般是基于应用的owner级做导出导入。 操作方法为: 在新库建立好owner和表空间,停老库的应用,在老库执行: $ exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000, 导入dmp文件到新库,在新库执行如下命令: $ imp user/pwdfromuser=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数据库的升级和管理系统数据的迁移工作,实施方案如下: 一、数据库软件升级 1.1操作系统AIX安装 新购p550小机自带AIX6100操作系统,用启动光盘安装并打好相应补丁; 设置相应环境参数,如:语言环境为简体中文等; 挂载IBM 1814-20A存储,并设成开机自动加载。 1.2 Oracle 10G安装 在存储上安装10g系列中的稳定版本:10.2.0.1并补丁升级至 10.2.0.4; 配置两台小机上所装Oracle,满足数据库的高可用性,保证一台down 机的情况下,另一台能自动接管数据库服务。 二、数据库迁移 2.1迁移前期调研 1、迁移任务的目标 本次项目数据迁移的目的是:将现有ERP系统的二个子系统数据,从低版本到高版本、跨操作系统的方式进行迁移升级,将信息中心现有应用系统数据进行无差异迁移,升级后的目的数据库环境在继承现有数据库所有功能基础上,性能及稳定性需更为完善,从而更好的满足对兴发现有各系统各方面性能的支持。 2、新旧环境分析

2.2迁移各类资源准备 1、人员技术准备 甲方:业务系统管理员; 软件开发商:提供系统维护手册,以搭建模拟应用系统测试数据; 乙方:网络工程师、数据库维护工程师。 2、系统环境准备 正式环境:2台8204-E8A操作系统AIX6100及Oracle10.2.0.4安装 正常; 中转环境:服务器1台、高档PC机2台,数据迁移中转及应用系统 模拟部署及测试用。 3、安装和调测相关软件 操作系统:Windows(临时中转环境) 数据库:Oracle10.2.0.4; 中间件:无; 工具软件:PL/SQL、LoadRun等。 2.3数据迁移方案设计 1、时间安排 模拟环境测试: 模拟结果观察: 正式数据迁移: 2、迁移方案 经过综合分析众多数据迁移相关资料,结合项目经验,本次数据迁移总体方案如下: A、迁移过程直接向10.2.0.4升级 Oracle验证矩阵中无特别强调,可以直接升级为10.2.0.4。 B、采用传统的EXP/IMP方式迁移 本次迁移非本机环境升级,涉及到Windows到AIX操作系统的跨越,另外Oracle版本跨度大,采用Oracle公司提供的EXP/IMP工

Oracle10g的数据迁移方案(好文章要转)

Oracle10g的数据迁移方案(好文章要转) 2008-07-07 11:31 网上看到一个不错的文章,转帖给大家,包括传输表空间解决跨平台及endian-ness问题的处理方法 找到将数据从仓库迁移到集市的最快方法。 Lora 是Acme银行的数据库管理员,她现在在该银行高层管理团队高级会议上成了大家最关注的核心人物。这次会议的目的是确定一些方法,来使最终用户能够详细分析公司主数据仓库中的数据。会上提出的一种想法是创建几个小型数据集市--每个集市根据一个特定的职能范围存储数据--这样每个数据集市就可以由专门的团队来使用。 为了有效地实现数据集市的方法,数据专家必须能将数据快速、有效地放入数据集市中。该团队面临的挑战就是解决如何用数据仓库中的数据快速刷新数据集市中的数据,而这些数据集市又运行在各个结构不同的平台上。这就是Lora为什么出席会议的原因。她会为移动数据提出哪些可供选择的方法呢? 作为一名经验丰富、知识渊博的数据库管理员,Lora向与会者提供了三种可能的方法,分别是: 使用可移动表空间 使用数据泵(导入和导出) 拖出表空间 本文介绍Lora对这三种可选方法的解释,包括它们的实施细节和优缺点。 可移动表空间 Lora 从可移动表空方法开始介绍。把整个表空间移动到目标系统的最快速方法是用FTP(文件传输协议)或rcp(远程复制)来简单地转移表空间的基本文件。但是,仅仅复制Oracle数据文件还不够,目标数据库必须识别出并导入文件以及相应的表空间,最终用户才能使用表空间数据。使用可移动表空间包括复制表空间文件和使它们中的数据在目标数据库中可用。 在考虑该方法之前必须进行一些审查。首先,对于要转移到目标系统的表空间TS1,它必须是自含式的(self-contained)。也就是说,在该表空间中表的所有索引、分区及其他从属于该表的各数据段都必须在该表空间内部。Lora解释说,如果一个表空间集合包含所有从属的数据段,那么就认为这个集合是自含式的。例如,如果表空间TS1和TS2要作为一个集合进行转移,TS1中的一个表在TS2中有一个索引,则这个表空间集合就是自含式的。但是,如果TS1中的一个表另一个索引在表空间TS3中,则该表空间集合(TS1, TS2)就不是自含式的。 要移动表空间,Lora提议使用Oracle数据库10g中的数据泵导出(Data Pump Export)工具。数据泵是Oracle的新一代数据转移工具,它替换了早期的Oracle Export (EXP)和Import (IMP)工具。这些老的工具使用正则SQL来提取和插入数据,而数据泵则与它们不同,它使用能绕过SQL缓冲区的专用API,从而使操作过程速度变得极快。此外,数据泵可以提取特定的对象,如特定的存储过程或特定表空

Mysql迁移Oracle方案

Mysql转Oracle方案2018年1月

1环境准备 1.1导入机 1、安装oracle11g数据库; 2、安装mysql数据库; 1.2oracle生产环境 1、新建DBA用户cssdj_zsy; 2、创建表空间TS_CSSDJ; 3、设置字符集utf8; 1.3Oracle SQL Developer配置 1.3.1配置JDK Oracle SQL Developer第一次使用,需要配置JDK,选择其自带JDK,路径地址为“product\11.2.0\dbhome_1\jdk”。 1.3.2配置第三方JDBC驱动程序 选择“工具”-“首选项”-“第三方JDBC驱动器”,添加项目中使用的即可“mysql-connector-java-5.1.7-bin.jar”。

2数据迁移 2.1数据准备 2.1.1生产数据备份 1、应用停机; 2、备份mysql生产库psc文件,备份表结构和表数据,不备份函数和事件; 2.1.2导入机还原备份文件 1、新建与oracle用户同名数据库cssdj_zsy,字符集utf8; 2、导入备份psc文件到cssdj_zsy; 2.2Oracle SQL Developer配置连接 2.2.1连接本机mysql数据库

2.2.2连接生产oracle数据库 2.3执行迁移 2.3.1关联移植资料档案库 1、选择oracle数据库,右键“移植资料档案库”-“关联移植资料档案库”。 2、成功关联后,左侧栏会出现“捕获的模型”和“转换的模型”。 2.3.2捕获方案 1、选择mysql数据库cssdj_zsy,右键执行“捕获方案”; 2、捕获日志;

windows环境oracle数据库迁移实例

环境描述: 源数据库 Oracle服务器版本: Oracle9.2.0.8 数据库名称db_name = oradb instance_name=oradb 操作系统版本: windows 2003 实例安装位置: $oracle_base = e:\oracle 目标数据库 Oracle服务器版本: Oracle9.2.0.8 数据库名称db_name = orcl instance_name=orcl 操作系统版本: windows xp 实例安装位置: $oracle_base = d:\oracle 执行步骤. 一, 数据库名称和sid要求相同 1.1 数据库名称的相关概念 一, 数据库名 数据库名是数据库的身份证号码, 用于表示一个数据库. 在参数文件(?/database/initSID.ora)中用DB_NAME表示. *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='oradb' *.instance_name='oradb' 数据库名是在安装数据库, 创建新的数据库, 创建数据控制文件, 修改数据库结构, 备份与恢复数据库时都需要使用到的. 查询数据库名称: ?Select name, dbid from v$database; ◆Show parameter db_name; ◆查看参数文件initsid.ora 二, 数据库实例名 数据库实例名是用户和操作系统进行联系的标识, 也就是说数据库和操作系统之间的交互使用的是数据库实例名. 实例名在参数文件中也存在, 该参数为instance_name. 数据库名和实例名可以相同也可以不同, 在一般情况下, 数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中, 数据库名和实例名是一对多的关系.

Oracle数据迁移技术与方案

Oracle数据迁移技术与方案 姓名: 学号: 指导老师: 系名:软件学院 专业:计算机科学与技术 班级: 11级12班 2012年5月21日

目录 摘要............................................................................................................................................................ - 1 - 第1章ORACLE数据迁移技术............................................................................................................. - 1 - 1.1数据迁移技术 (1) 1.2数据迁移的一般步骤 (1) 1.3O RACLE数据迁移方法 (3) 第2章ORACLE数据迁移方案............................................................................................................. - 6 - 2.1使用可移动表空间 (6) 2.2数据泵导出与导入工具 (6) 2.3拖出表空间 (7) 第3章总结.............................................................................................................................................. - 8 -

Oracle 表空间数据文件迁移

一、系统表空间数据文件迁移: SQL> conn /@study as sysdba 已连接。 SQL>descdba_data_files; 名称是否为空? 类型 ----------------------------------------- -------- ---------------------------- FILE_NAME VARCHAR2(513) FILE_ID NUMBER TABLESPACE_NAME VARCHAR2(30) BYTES NUMBER BLOCKS NUMBER STATUS VARCHAR2(9) RELATIVE_FNO NUMBER AUTOEXTENSIBLE VARCHAR2(3) MAXBYTES NUMBER MAXBLOCKS NUMBER INCREMENT_BY NUMBER USER_BYTES NUMBER USER_BLOCKS NUMBER ONLINE_STATUS VARCHAR2(7) SQL> select file_name,tablespace_name from dba_data_files where tablespace_name= 'SYSTEM'; FILE_NAME -------------------------------------------------------------------------------- TABLESPACE_NAME ------------------------------ D:\ORACLE\PRODUCT\10.2.0\ORADATA\STUDY\SYSTEM01.DBF SYSTEM SQL> shutdown immediate 数据库已经关闭。 已经卸载数据库。 ORACLE例程已经关闭。 SQL> host copy D:\oracle\product\10.2.0\oradata\study\system.dbf d:\oracle\study 系统找不到指定的文件。 SQL> host copy D:\oracle\product\10.2.0\oradata\study\system.dbf d:\oracle\study

mysql数据库迁移到Oracle数据库迁移方案

mysql数据库迁移到Oracle数据库迁移方 案 准备工具 1.连接Mysql 的jdbc 驱动mysql-connector-java-5.0.4-bin.jar 2.Oracle公司开发的SQL Developer 1.2 下面就是配置SQL Developer 1.2 配置环境 选择Tools-Preferences -Database-Third Party JDBC Driver 点击Add Entry 添加Mysql的jdbc 驱动。

配置Mysql 和Oracle 的连接 点击Connection 右键选择New Connection 分别建立Mysql 和Oracle连接。 建立好连接后,你就可以查看你得数据库了。 配置Repository 选择Migration -> Repository Management -> Create Repository创建Repository。

两种迁移数据方式: 1.Capture the source database or tables 2.Convert the captured database or tables 3.Generate DDL for the new Oracle schema objects 4.Run the generated DDL script to create the new user and objects 5.Copy any data from the source database to the new database,select Migration->Migration Data select a converted model. 快速迁移: 选择你要迁移的表或数据库,选择Migration -> Quick Migrate

Oracle数据库迁移方法

Oracle 数据库迁移 1. 背景: 据项目实施人员反映,部署系统的过程中,有一个最大的问题,那就是平台数据库的迁移。经常会遇到表空间导出导入失败,或是导入过程中数据表丢失或是数据表虽然能导入,但表字段丢失等现象。针对这种情况,我仔细分析了一下:主要原因出在目前的exp/imp 这种数据导入导出工具存在比较大的缺陷,这种缺陷将在后面提到。相比目前这种方式,我这里提供一种比较方便稳定的数据库迁移方案。以下提到的方案,我也多次尝试验证了,并且还很实 在。 2. 数据库迁移方案: 实用环境:Oracle10g 或是以上版本。 原理:利用Oracle10g 提供的数据泵,快速加载以及卸载数据。优点:导入导出数据库快速比较快,且完整,性能稳定。缺点:这种方式只能在装有Oracle 服务器端的软件的机器上应用。完整方案: 这里模拟二个场景: 场景1:实现不同库下不同用户之间表空间的迁移。 假设通过Oracle 数据泵, A 用户UserA 将表空间TA 提取到 A.dmp,而后B用户UserB将A.dmp装载到表空间TB。 第一步:首先在源库(A) 上建一个目录,这个目录用于转储导入导出过程中的数据文件及日志文件。 create directory dumpdir as 'E:\dump'; 注:dumpdir为目录名,它是数据库中的目录对象名, “cdump':为对应的磁盘物理路径。 第二步:给用户授予目录的读写权限。(因为要写日志,这一步是必须的) grant read, write on directory dumpdir to UserA;

第三步:导岀用户UserA下的所有对象: expdp UserA/Password@orcl schemas=UserA dumpfile=expa.dmp DIRECTORY= dumpdir 注: 1、orcl为配置的用于从客户端连接Oracle的连接名。 2、dumpfile 中不能再包含路径 以上三步为数据导岀过程,下面几步为数据导入过程。 第四步:在目标库(B)上创建一表空间(TB)(如果不存),已存则直接到下一步。 CREATE TABLESPACE TB LOGGING DATAFILE 'F:\oracle\product\1020\oradata\orclDB\sde.dbf' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M EXTENT MANAGEMENT LOCAL; 以上是我本机测试代码 第五步:在目标库上创建用户UserB CREATE USER UserB IDENTIFIED BY "sagis" DEFAULT TABLESPACE TB; GRANT DBA TO UserB; 第六步:在目标库(B)上,创建一个目录对象,如果A、B位于同一个Oracle服务器上,则可以不创建,可以用第一步创建的dumpdir 对象。如果A、B位于不同Oracle服务器,则 需另外创建。 create directory dumpdir as 'c:\dump'; 以不同服务器上Oracle迁移为例,则此时要将第三步创建的expa.dmp 数据文件拷到B服务 器的c:\dump 目录下。 第七步:给用户授予目录对象的读写权限,同第二步。 grant read, write on directory dumpdir to UserB; 第八步:导入数据到B库上用户UserB的表空间TB下 impdp UserB/sagis@sgs directory=dumpdir dumpfile=expa.dmp remap_schema=UserA:UserB remap_tablespace=TA:TB,TC:TD

ORACLE数据备份与数据恢复方案

ORACLE数据备份与数据恢复方案

摘要 结合金华电信IT系统当前正在实施的备份与恢复策略,重点介绍电信业务计算机管理系统(简称97系统)和营销支撑系统的ORALCE数据库备份和恢复方案。 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。要实现简单导出数据(Export)和导入数据(Import),增量导出/导入的按设定日期自动备份,可考虑,将该部分功能开发成可执行程序,然后结合操作系统整合的任务计划,实现特定时间符合备份规划的备份应用程序的运行,实现数据库的本级备份,结合ftp简单开发,实现多服务器的数据更新同步,实现数据备份的异地自动备份。 关键字:数据库远程异地集中备份

目录 一、前言 ···························································错误!未定义书签。 二、金华电信ORACLE数据库的备份与恢复方案····错误!未定义书签。 2.1 备份系统数据库备份策略··································错误!未定义书签。 2.2 备份系统数据库恢复策略··································错误!未定义书签。 2.3 金华电信97系统及营销支撑系统的系统状况·错误!未定义书签。 2.4 金华电信97系统、营销支撑系统及备份系统总体结构图错误!未定义书签。 2.5 备份系统结构图说明··········································错误!未定义书签。 三、金华电信97系统的数据库备份和恢复 ···········错误!未定义书签。

Oracle超大型数据库数据迁移方法论

龙源期刊网 https://www.360docs.net/doc/cb1615845.html, Oracle超大型数据库数据迁移方法论 作者:刘娟 来源:《电脑知识与技术》2016年第30期 摘要:在实践中,一般将容量超过1T的数据库,称之为超大型数据库。在运营过程中,经常会遇到不同的需求,需要对这类数据库的数据进行迁移,该文根据日常运营实践,总结了对Oracle超大型数据库数据采用逻辑迁移的解决方案。 关键词:数据库;逻辑;迁移;数据泵 中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)30-0007-02 通信企业为了支撑业务发展和企业日常管理的需要,建设了规模庞大的IT系统。为了保障IT系统的长期稳定高效的运转,在日常运营过程中,常常会遇到服务器硬件升级扩容、系统软件升级等需求。为了完成这些需求,通常会对数据进行迁移,需要迁移的数据规模从几百G到超过10T。在长期的运营实践中,作者总结了一套完善、成熟的数据迁移方法论,通过该方法论,成功完成了大量系统的数据迁移,累计实现数据迁移规模超过100T,有效的支撑了系统稳定高效的运转。 1 不同迁移方法的对比 数据迁移通常可以采用物理和逻辑两种不同的方法,两种方法的对比见表1。 随着x86硬件平台的性能提高和成熟、Linux系统的稳定、以及基于x86平台虚拟化技术的发展,将会越来越多地出现将数据从小型机平台迁移到x86平台的需求,在这种情况下,逻辑迁移是最常用的一种迁移方法。本文重点讨论逻辑迁移的方法。 2 数据迁移准备工作 迁移前期需要完成的准备工作主要包括以下内容:目标主机数据库软件的安装、创建数据库、创建表空间以及下面的检查工作(注意目标数据库在迁移完成之前需要置为非归档模式)。 3 详细迁移步骤 为了减少逻辑迁移过程中的系统停机时间,需要对数据先进行分类,部分历史或者静态数据在正式迁移前先行导入到目标数据库中,尽量缩小正式迁移过程中的数据量。 10g以前的版本由于无数据泵技术,所以分两种情况讨论。

相关文档
最新文档