ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle数据库迁移-文档 -LINUX_TO_WINDOWS

oracle数据库迁移-文档 -LINUX_TO_WINDOWS

原创 Linux操作系统 作者:chicken0915 时间:2012-07-12 00:56:17 0 删除 编辑

 

 

应客户要求制作本次试验过程,本次操作案例采用数据库文件复制的方式,

优点:操作简单便捷,对数据库基本了解的都可以进行操作

缺点:迁移数据库的时候有时间窗口,有足够时间窗口进行操作的最好使用此方法。

生产机:LINUX REDHAT 4 32BIT ORACLE 10.2.0.1.0 32BIT

目标机:WINDOWS 2003 32BIT   ORACLE 10.2.0.1.0 32BIT

1、创建一个测试表插入数据并提交-迁移完成后验证此数据;

2、生产服务器创建一个PFILE文件;

SQL> create pfile from spfile;

3、创建控制文件脚本文件

SQL> alter database backup controlfile to trace as '/u01/oracle/control_lzk.sql';

4、关闭生产服务器

SHUTDOWN IMMEDIATE

5、使用工具或者命令传送相应文件到迁移目标服务器制定目录,

数据文件:*.dbf 系统临时表空间不需要传temp01.dbf

参数文件:initorcl.ora

控制文件脚本:control_lzk.sql

6、修改PFILE文件内容,包括其他和路径相关的内容;

/u01/admin/orcl/adump 修改为 D:\oracle\product\10.2.0\admin\orcl\adump

/u01/admin/orcl/bdump修改为D:\oracle\product\10.2.0\admin\orcl\bdump

/u01/admin/orcl/cdump修改为D:\oracle\product\10.2.0\admin\orcl\cdump

/u01/admin/orcl/udump修改为D:\oracle\product\10.2.0\admin\orcl\udump

/u01/flash_recovery_area修改为D:\oracle\product\10.2.0\flash_recovery_area

/u01/oradata/orcl/control01.ctl修改为D:\oracle\product\10.2.0\oradata\orcl\control01.ctl

/u01/oradata/orcl/control02.ctl修改为D:\oracle\product\10.2.0\oradata\orcl\control02.ctl

/u01/oradata/orcl/control03.ctl修改为D:\oracle\product\10.2.0\oradata\orcl\control03.ctl

 

7、修改完成后以PFILE参数文件启动数据库到NOMOUNT模式

SQL> startup nomount pfile='D:\oracle\product\10.2.0\oradata\orcl\initorcl.ora'

ORACLE 例程已经启动。

8、修改control_lzk.sql控制文件脚本中的路径数据Set #1. NORESETLOGS case

--     Set #1. NORESETLOGS case

--

-- The following commands will create a new control file and use it

-- to open the database.

-- Data used by Recovery Manager will be lost.

-- Additional logs may be required for media recovery of offline

-- Use this only if the current versions of all online logs are

-- available.

 

-- After mounting the created controlfile, the following SQL

-- statement will place the database in the appropriate

-- protection mode:

--  ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE

 

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    MAXINSTANCES 8

    MAXLOGHISTORY 292

LOGFILE

  GROUP 1 ' D:\oracle\product\10.2.0\oradata\orcl\redo01.log'  SIZE 50M,

  GROUP 2 ' D:\oracle\product\10.2.0\oradata\orcl\redo02.log'  SIZE 50M,

  GROUP 3 ' D:\oracle\product\10.2.0\oradata\orcl\redo03.log'  SIZE 50M

-- STANDBY LOGFILE

 

DATAFILE

  ' D:\oracle\product\10.2.0\oradata\orcl\system01.dbf',

  ' D:\oracle\product\10.2.0\oradata\orcl\undotbs01.dbf',

  ' D:\oracle\product\10.2.0\oradata\orcl\sysaux01.dbf',

  ' D:\oracle\product\10.2.0\oradata\orcl\users01.dbf',

  ' D:\oracle\product\10.2.0\oradata\orcl\example01.dbf'

CHARACTER SET WE8ISO8859P1;

 

-- Database can now be opened normally.

ALTER DATABASE OPEN RESETLOGS;

 

-- Commands to add tempfiles to temporary tablespaces.

-- Online tempfiles have complete space information.

-- Other tempfiles may require adjustment.

ALTER TABLESPACE TEMP ADD TEMPFILE ' D:\oracle\product\10.2.0\oradata\orcl\temp01.dbf'

     SIZE 20971520  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;

-- End of tempfile additions.

9、执行修改后的脚本文件;

SQL> @D:\oracle\control_lzk.sql

 

控制文件已创建。

 

数据库已更改。

 

表空间已更改。

 

SQL>

10、    查询第一步创建的表及插入的数据;

SQL> desc lzk

 名称                                      是否为空? 类型

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

 

 ID                                                 NUMBER(38)

 NAME                                               VARCHAR2(10)

 

SQL> select * from lzk;

 

        ID NAME

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

         1 a

         2 b

SQL>

11、    创建SPFILE文件,数据库默认从SPFILE启动

SQL> CREATE SPFILE FROM PFILE;

 

12、    查询此次数据库迁移完成。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7755871/viewspace-735243/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-07-01

  • 博文量
    41
  • 访问量
    75601