Chinaunix首页 | 论坛 | 博客
  • 博客访问: 246846
  • 博文数量: 61
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 800
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-14 15:18
文章分类

全部博文(61)

文章存档

2011年(4)

2010年(5)

2009年(10)

2008年(42)

我的朋友

分类: Oracle

2008-06-20 13:15:56

需求:把原系统Oracle App1数据库迁移到一台新的服务器和阵列上,原系统有250GB的数据量,需要停止原来系统的业务,做冷备份和恢复。

解决方法如下:

◆1.在新的服务器和阵列上装好一个oracle App2数据库;

◆2.停止原系统oracle App1;

◆3.把原系统的数据冷拷贝到新的服务器上,然后按照以下步骤来进行恢复:

(1)、获取数据库相关信息

首先要查看一下数据库的文件内容:

select * from v$datafile;

select * from v$controlfile

select * from v$logfile;

数据文件:

G:\ORADATA\WEBOA\SYSTEM01.DBF

G:\ORADATA\WEBOA\UNDOTBS01.DBF

G:\ORADATA\WEBOA\CWMLITE01.DBF

G:\ORADATA\WEBOA\DRSYS01.DBF

G:\ORADATA\WEBOA\EXAMPLE01.DBF

G:\ORADATA\WEBOA\INDX01.DBF

G:\ORADATA\WEBOA\ODM01.DBF

G:\ORADATA\WEBOA\TOOLS01.DBF

G:\ORADATA\WEBOA\USERS01.DBF

G:\ORADATA\WEBOA\XDB01.DBF

控制文件:

G:\ORADATA\WEBOA\CONTROL01.CTL

G:\ORADATA\WEBOA\CONTROL02.CTL

G:\ORADATA\WEBOA\CONTROL03.CTL

重做日志文件:

G:\ORADATA\WEBOA\REDO03.LOG

G:\ORADATA\WEBOA\REDO02.LOG

G:\ORADATA\WEBOA\REDO01.LOG

(2)、移动应用数据文件

shutdown immediate关闭数据库,拷贝数据文件到另外一个目录下。需要copy 的文件有:

system01.dbf

indx01.dbf

users01.dbf

应用数据文件

(3)、修改数据库文件的位置

启动MOUNT模式

startup mount;

alter database rename file 'g:\oradata\weboa\SYSTEM01.DBF' to 'd:\oradata\weboa\SYSTEM01.DBF';

注意:迁移所有的DB文件,但不包括控制文件与日志文件,TEMP文件。

移动控制文件

(1)备份SPFILE中的内容:

再重新启动数据库:

startup;

create pfile=’c:\init.ora’ from spfile;

(2)修改init.ora文件中的内容:

*.control_files='\oradata\ocp\control01.ctl','\oradata\ocp\control02.ctl','\oradata\ocp\control03.ctl'

进行更改已经复制的目录位置。

Shutdown 数据库

(3)将控制文件复制过去

将三个控制文件移动到上面所修改的的目录下。

(4)倒入参数文件

以init.ora参数方式启动:

startup pfile=’\oracle\init.ora’;

create spfile from pfile=’\oracle\init.ora’;

shutdown immediate;

startup; 从spfile中进行启动。

这样控制文件移动工作就结束了。

重建或重定位LOG文件

解决日志文件的移动方式有两种,一种是移动(RENAME方式)另一种是重新创建。

(1)移动LOG文件

重新移动数据库文件与移动系统数据库文件是一样的方法,只是要求数据库必须是“startup mount”方式进行。

startup mount

alter database rename file 'g:\oradata\weboa\REDO01.LOG' to 'd:\oradata\weboa\REDO01.LOG';

alter database rename file 'g:\oradata\weboa\REDO02.LOG' to 'd:\oradata\weboa\REDO02.LOG';

alter database rename file 'g:\oradata\weboa\REDO03.LOG' to 'd:\oradata\weboa\REDO03.LOG';

四、重建系统监时(temp)文件系统

在移动数据表空间时,TEMP文件是不能被移动的,这里要求可以进行重建一个TEMP表空间,并设置为系统默认的TEMP文件系统。

然后再册除原来的TEMP表空间,达到移动表空间的过程。

迁移临时表空间

◆1.startup --启动数据库

◆2. create temporary tablespace "temp02" tempfile 'd:\oradata\weboa\temp02.dbf' size 500m extent management local uniform size 10m; --创建中转临时表空间

◆3.alter database default temporary tablespace temp2; --改变缺省临时表空间 为刚刚创建的新临时表空间temp2

◆4.drop tablespace temp including contents and datafiles;--删除原来临时表空间

◆5 然后再删除原来的TEMP文件就可以了。

阅读(842) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~