oracle 9i 数据库迁移

2101阅读 0评论2008-04-28 niezhenqun
分类:Oracle

现在想把原系统oracle 9205数据库迁移到一台新的服务器和阵列上,原系统有250GB的数据量,所以想停止原来系统的业务,做冷备份和恢复、
我的想法是:
  1 在新的服务器和阵列上装好一个oracle 9206数据库;

  2 停止原系统oracle 9205;

  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
  temp01.dbf
  users01.dbf
  应用数据文件

3)、 修改数据库文件的位置
启动MOUNT模式
        startup mount;
        alter database rename file 'g:\oradata\weboa\SYSTEM01.DBF' to 'd:\oradata\weboa\SYSTEM01.DBF';
注意只能进行更改移动的数据库文件,不包括控制文件与日志文件,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文件就可以了。
上一篇:RedHatLinux AS4 U2 安装 oracle9204 成功 笔录!!!
下一篇:mysql5+apache2.2+php5.2安装配置