oracle 11g 单实例数据库 怎么简便的迁移到另一台服务器

oracle 11g 单实例数据库 怎么简便的迁移到另一台服务器,第1张

1、如果两台服务器,存在的表结构什么的都一样,可以使用冷备份全库,把所有的数据文件、日志、归档日志等全拷贝过去(如果是linux系统,要使用oracle用户 *** 作,否则会产生文件权限问题)

2、RMAN的异机恢复

3、EXPDP/IMPDP 全库导出、全库导入(注意版本问题,低往高可以,反之不可以)!

利用RMAN把ORACLE 10G 64位降级为32位

由于项目需要测试环境,原库为ORACLE 10204 64位,环境导致需迁移到32位上机器上去,网上有很多32位升级到64位的文章,其实64位降级为32位大同小异,数据字典的改变而已,可以利用冷备 RMAN等方法进行迁移,本文是利用RMAN进行迁移的,RMAN备份可以参考别的文章。

具体步骤如下。

1、迁移前一天停止RMAN脚本中的DELETE ALL INPUT来停止删除归档日志文件。

2、全备前使用V$LOG来确定当前的日志序列号。

3、在当前服务器中新建目录来保存RMAN备份文件。

4、使用RMAN全备脚本进行完整的RMAN备份,指定目录到新建的目录中。同时保存RMAN备份日志,用来过后确定ORACLE控制文件所在的备份集备份片。

5、在原数据库中使用CREATE PFILE FROM SPFILE来更新PFILE。

6、在目标服务器中新建数据库,数据库的名字和原数据库一样。

7、建立完成会删除所有数据文件,日志文件,控制文件,同时删除SPFILE。

8、在目标服务器中新建目录,此目录和原服务器中的目录一样。

9、 通过FTP传输所有备份集备份片到目标服务器中新建的目录中。

10、修改目标服务器中数据库的PFILE,要求和原数据库PFILE一样。

11、启动数据库到NOMOUNT状态。

12、在目标服务器中新建目录用来存在恢复的控制文件,参照PFILE中的配置

13、进行控制文件恢复。

14、启动数据库到MOUNT状态。

15、在目标服务器中新建目录用来存放数据库文件,建立归档目录用来存放归档日志,

同时建立各种TRACE文件目录。

16、通过RESOTRE来进行数据文件还原。

到此准备工作完成,下面的步骤为进行数据恢复时的步骤

17、提取原库的对象信息,在迁移完成后方便对比。

18、关闭应用,确定不会再有新的数据写入到数据库。

19、进行多次日志切换,确保所有更改的数据都已经写入到归档日志,如果日志文件为三个进行四次切换即可。

20、通过原数据库查看V$LOG来确定当前日志序列,判断出需要拷贝的归档日志文件,为了更加安全可以在最早的归档以前再多取几个。

21、通过FTP拷贝原服务器归档日志到目标服务器相应的目录中。

22、通过RECOVER DATABASE UNTIL 来进行恢复。

23、使用ALTER DATABASE OPEN RESETLOGS来打开数据库。

24、使用命令SHUTDOWN IMMEDIATE来关闭数据库。

25、使用命令STARTUP MIGRATE启动数据库。

26、运行脚本utlirpsql。

27、使用命令SHUTDOWN IMMEDIATE来关闭数据库。

28、使用命令STARTUP来启动数据库。

29、运行脚本utlrpsql。

30、使用命令SHUTDOWN IMMEDIATE来关闭数据库。

31、使用命令STARTUP来启动数据库。

32、提取数据库对象信息,和原库的对象信息进行比对。

至此数据迁移完成。

建立好相关目录 拷贝好所有的备份到与原库上备份的相同目录下 我的是/u01/app/oracle/backup

[root@itspf ~]# su - oracle

[oracle@itspf ~]$ cd /u01/app/oracle/

[oracle@itspf oracle]$ ls

oraInventory product

[oracle@itspf oracle]$ mkdir admin

[oracle@itspf oracle]$ ls

admin oraInventory product

[oracle@itspf oracle]$ mkdir flash_recovery_area

[oracle@itspf oracle]$ mkdir archivelog

[oracle@itspf oracle]$ mkdir backup

[oracle@itspf oracle]$ mkdir oradata

[oracle@itspf oracle]$ cd admin

[oracle@itspf admin]$ mkdir itspfdb

[oracle@itspf admin]$ cd itspfdb/

[oracle@itspf itspfdb]$ mkdir adump

[oracle@itspf itspfdb]$ mkdir bdump

[oracle@itspf itspfdb]$ mkdir cdump

[oracle@itspf itspfdb]$ mkdir dpdump

[oracle@itspf itspfdb]$ mkdir pfile

[oracle@itspf itspfdb]$ mkdir udump

[oracle@itspf itspfdb]$ cd

[oracle@itspf admin]$ cd

[oracle@itspf oracle]$ cd ora

oradata/ oraInventory/

[oracle@itspf oracle]$ cd oradata/

[oracle@itspf oradata]$ mkdir itspfdb

从源库拷贝一个PFLIE到新库

SQL> startup mount from pfile='/soft/pfile20130710ora'

ORACLE instance started

Total System Global Area 1019215872 bytes

Fixed Size 1271252 bytes

Variable Size 616565292 bytes

Database Buffers 394264576 bytes

Redo Buffers 7114752 bytes

ORA-02231: missing or invalid option to ALTER DATABASE

[root@itspf ~]# su - oracle

SQL> startup nomount pfile='/soft/pfile20130710ora';

SQL>create spfile='/u01/app/oracle/product/1020/db_1/dbs/spfileitspfdbora' from pfile='/soft/pfile20130710ora';

-- 也可以利用RMAN在备份中恢复参数文件备份

RMAN> restore spfile to pfile '/u01/app/oracle/product/1020/db_1/dbs/inititspfdbora' from '/u01/app/oracle/backup/c-4014947212-20130919-01';

-- 恢复控制文件

[oracle@itspf ~]$ rman target /

Recovery Manager: Release 102040 - Production on Thu Sep 26 00:43:08 2013

Copyright (c) 1982, 2007, Oracle All rights reserved

connected to target database: itspfdb (not mounted)

RMAN> restore controlfile from '/u01/app/oracle/backup/c-4014947212-20130919-01';

RMAN> exit

Recovery Manager complete

--还原数据库

[oracle@itspf ~]$ rman target /

Recovery Manager: Release 102040 - Production on Thu Sep 26 02:09:44 2013

Copyright (c) 1982, 2007, Oracle All rights reserved

connected to target database: itspfdb (not mounted)

RMAN> alter database mount;

RMAN> restore database

--恢复数据库。

SQL>startup mount;

--在其中可能有需要几个归档文件,可以把原库当天备份的归档文件拷贝过来 选择AUTO

SQL>recover database using BACKUP CONTROLFILE until cancel;

SQL>alter database open resetlogs;

SQL>shutdown immediate

-- 进行降级后的 *** 作

SQL>Shutdown immediate

SQL>startup migrate

SQL>@$ORACLE_HOME/rdbms/admin/utlirpsql;

SQL>Shutdown immediate

SQL>Startup

SQL>@$ORACLE_HOME/rdbms/admin/utlrpsql;

SQL>Shutdown immediate

SQL>Startup

一下是最简单的数据库迁移(相同数据库版本,相同数据库路径,相同的 *** 作系统)

1关闭A机器上的数据库

2安装与A机器上相同版本的ORACLE数据库

3拷贝所有的数据文件,控制文件,参数文件,到B机器上,要求路径必须和A机一样

你的数据文件在A机的D盘,那就必须拷贝到B机的D盘

4建立相关的服务

5启动B机数据库

以上就是关于oracle 11g 单实例数据库 怎么简便的迁移到另一台服务器全部的内容,包括:oracle 11g 单实例数据库 怎么简便的迁移到另一台服务器、rman oracle 9i 32位连接oracle 10g 64位吗、oracle 要把整个数据库搬到另一台电脑B上,即发现A机有点问题,要全部移到B机上,怎么处理等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9460490.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存