2.Oracle数据库冷备迁移


Oracle数据库冷备迁移需要停源库,仅适用于快速克隆数据量不大的数据库

1、查找源库数据文件、日志文件、临时文件、控制文件和参数文件相应位置

A)查看数据文件位置:select name from v$datafile;

B)查看日志文件位置:select member from v$logfile;

C)查看临时文件位置:select name from v$tempfile;

D)查看控制文件位置:show parameter control;

E)查看参数文件位置:show parameter spfile;

 

2.停源库

3.在目标机器上创建相应的目录

A)数据文件、临时文件、控制文件和日志文件的目录

B)dump文件相关目录(adump,bdump,cdump,udump),这几个目录可以在源库的参数文件中查看,如果目标和源不一样,需要修改目标环境的参数文件

mkdir -p /oracle/admin/gmisorcl/adump;

mkdir -p /oracle/admin/gmisorcl/bdump;

mkdir -p /oracle/admin/gmisorcl/cdump;

mkdir -p /oracle/admin/gmisorcl/udump;

4.传输文件

通过FTP(BIN模式)将数据文件,控制文件,日志文件从源库拷贝到目标机器上(需保证源和目录一致)。当然如果源目录比较乱,而这次又希望目标机器整洁点,那就需要通过重建控制文件来实现,步骤6将详解

5.启动目标库,OK!

6.通过重建控制文件来重新规划数据库文件分布

A)将源库启动到mount状态

SQL>startup mount;

B)备份控制文件

SQL>alter database backup controlfile to trace;

C)找到trace文件(包含控制文件的创建脚本),在udump目录下。

show parameter dump;

D)编辑创建新控制文件的脚本,主要修改数据文件和日志文件的路径

create controlfile reuse database "GMISOARCL" noresetlogs noarchivelog
    maxlogfile 16
    xxxxxxx
    xxxxxxx
    xxxxxxx
logfile
    group 1(
        '/xxxx/xxxx/redo01_a.log',
        '/xxxx/xxxx/redo01_b.log'
    )size 200M,
    group 2(
        '/xxxx/xxxxx'
    )size 200
datafile
'/xxx/xxx/xxx/system01.dbf';
......
......
character set AL32UTF8;

E)将源机器的数据文件、日志文件FTP拷贝到目标机器新目录下

F)目标机器重建控制文件

   目标机器上启动数据库到nomount状态下,然后执行步骤D中脚本即可

G)启动数据,并重建临时表空间(相应的脚本在trace文件中)

SQL>recover database;

SLQ>alter database open;

原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/275512.html

(0)
上一篇 2022年7月20日
下一篇 2022年7月20日

相关推荐

发表回复

登录后才能评论