Chinaunix首页 | 论坛 | 博客
  • 博客访问: 662766
  • 博文数量: 163
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1625
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-24 11:40
个人简介

资深Oracle数据库专家 OCM认证大师 10年数据库相关服务及开发经验 各类数据库相关方案的编写,管理及实施 数据中心数据库日常运维、大型项目割接、性能优化等方面有丰富的实战经验 客户包括: 电信,银行,保险,航空,国网,汽车,烟草等 想要一起学习探讨数据安全技术的请加qq群 256041954

文章分类

全部博文(163)

文章存档

2017年(2)

2016年(112)

2015年(38)

2014年(11)

我的朋友

分类: Oracle

2015-01-07 17:14:25

迁移步骤

1.       135.129.9.80 135.129.9.81的服务器上安装oracle 9i rac软件。

2.       升级软件版本为9.2.0.8并安装小补丁

  Installed Patch List:

  =====================

  1) Patch 5671074 applied on Sun Oct 21 20:49:04 GMT+08:00 2007

      [ Base Bug(s): 5671074  ]

  2) Patch 5496862 applied on Sun Oct 21 20:47:28 GMT+08:00 2007

      [ Base Bug(s): 5496862  ]

  3) Patch 5391326 applied on Sun Oct 21 20:39:33 GMT+08:00 2007

      [ Base Bug(s): 5391326  ]

 

3.       划分并发vglv(两边的并发卷组同步,并用HACMP挂起)

注:

本次割接测试的vg pp128M.

划分1voting盘(/dev/srvmconf)用于rac心跳。

划分6组日志文件。每个实例用3组。

Mklv –y udfsrvmconf -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        2

mklv -y 'udfsrvmconf' -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        2

mklv -y 'udfspfile'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        1

mklv -y 'udfctl01'    -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        1

mklv -y 'udfctl02'    -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        1

mklv -y 'udfctl03'    -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        1

mklv -y 'udfuser'     -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        2

mklv -y 'udftools'    -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        2

mklv -y 'udfindex'    -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        2

mklv -y 'udfsys01'    -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        16

mklv -y 'udfredo01'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        4

mklv -y 'udfredo02'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        4

mklv -y 'udfredo03'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        4

mklv -y 'udfredo04'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        4

mklv -y 'udftemp01'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udftemp02'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udftemp03'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udftemp04'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udfundo01'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udfundo02'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udfundo03'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udfundo04'   -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf001'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf002'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf003'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf004'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf005'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf006'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf007'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf008'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf009'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf010'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf011'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf012'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf013'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf014'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf015'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        32

mklv -y 'udf016'      -w 'n' -s 'n' -r 'n'         -t 'raw' uipracvg1        3

…………

4.       2个节点创建归档日志目录/backup_crm/recover, /backup_crm/recover

5.       dbca在当前存储上创建数据库,测试rac环境。

6.       停止生产库的归档日志的备份。(当时是备到带库后,又恢复出来的)

7.       备份生产库到指定目录

run{

    allocate channel t1 type disk;

    allocate channel t2 type disk;

    sql 'alter system archive log current';

BACKUP INCREMENTAL LEVEL = 0 filesperset 5 DATABASE format "\rmanb\db_%d_%T_%s_%p_%c"; 

    sql 'alter system switch logfile';

BACKUP current controlfile format "E:\rmanback\c_%d_%T_%c";

    release channel t1;

    release channel t2;

}

8.       传输备份时间开始产生的归档日志文件到135.129.9.80:/rmanb目录。

9.       135.129.9.80nomount数据库

拷贝生成库的参数文件$ORACLE_HOME/dbs/inituip.ora到本地目录。

Nomount数据库

Sqlplus /nolog

>startup nomount

10.  调整tnsnames.ora文件

    拷贝生产库的tnsnames.ora中配置到135.129.9.80主机tnsnames.ora文件.

 

11.   135.129.9.80上恢复数据库:

Run

{

Allocate channel ch_1 type disk;

Restore controlfile from “控制文件所在备份集”;

Sql ‘alter database mount’;

Release channel ch_1;

}

注:

恢复控制文件:

  backup current controlfile format='/oracle/rmanback/%d_%s.ctl';

  restore controlfile from '/rmanb/ uip1.ctl';

或者:

sql>

alter database backup controlfile to‘/oracle/uip.ctl’;

针对aix下,如果是其他系统 bs可能不同。

dd if=/rmanb/uip1.ctl of=/dev/rdfctl01 bs=4k seek=1

dd if=/rmanb/uip1.ctl of=/dev/rdfctl01 bs=4k seek=1

 

hp_nuxi下:

(注意:/oracle/test_fs.dbf大小8396800,/oracle/test_raw.dbf大小8380416,dd试着去拷贝8M+8k 的文件到8M的 raw逻辑卷)
正确的方法是让dd跳过第一个数据块
%dd if=/oracle/test_fs.dbf of=/oracle/test_raw.dbf bs=8192 skip=1

12.   135.129.9.80恢复数据库(如果新生成的lv名字不一样,需要设置rename):

1):

run{

set newname for datafile 1 to '/dev/r..';

set newname for datafile 2 to '/dev/r..';

set newname for datafile 3 to '/dev/r..';

set newname for datafile 4 to '/dev/r..';

set newname for datafile 5 to '/dev/r..';

restore database;

switch datafile all;

}

 

2):

run{

allocate channel ch_1 type disk;

allocate channel ch_2 type disk;

set until SEQUENCE 147262 thread 1;

set ARCHIVELOG DESTINATION TO '/rmanb';

restore database;

sql 'alter database open';

release channel ch_1;

release channel ch_2;

}

13. 恢复归档

recover database using backup controlfile until cancel;

14  Resetlogs数据库

Sqlplus /nolog

>alter database open resetlogs;

15. 设置ORACLE_HOMEORACLE_SID环境变量如下:

   UIP1:

export ORACLE_SID=uip1

   UIP2:

export ORACLE_SID=uip2

 16. 升级单节点数据库为rac,

分别修改2个节点的参数文件

添加或修改如下内容:

#add for rac

*.cluster_database_instances=2

*.cluster_database=TRUE

uip1.cluster_interconnects=192.168.1.13

uip2.cluster_interconnects=192.168.1.14

uip1.undo_tablespace=UNDOTBS1

uip2.undo_tablespace=UNDOTBS2

uip1.instance_name=uip1

uip2.instance_name=uip2

uip1.instance_number=1

uip2.instance_number=2

uip1.thread=1

uip2.thread=2

uip1.local_listener=LISTENER_UIP1

uip2.local_listener=LISTENER_UIP2

*.remote_listener=LISTNER_UIP

uip1. log_archive_dest_1=’LOCATION=/arch1’;

uip2. log_archive_dest_1=’LOCATION=/arch2’;

17. 运行rac view sql

     @$ORACLE_HOME/rdbms/admin/catclust.sql

18. 重建控制文件,改maxinstance=2

   用 alter database backup controlfile to trace生成脚本,然后改脚本中maxintance的值为2,重建控制文件。

 

19. 创建节点2undo tablespace  又建了三个lv(rdfundo05,rdfredo05,rdfredo06)

    CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE

'/dev/rdfundo05'  autoextend off  SIZE2000M;

20. 增加thread = 2的日志文件

    alter database add  logfile thread 2

          group 5 ('/dev/ rdfredo05') size100M,

          group 6 ('/dev/ rdfredo06') size100M;

alter database enable public thread 2;

21. 启动第2个实例

Sqlplus /nolog

>startup

22. 创建两个节点的密码文件,否则启动不了数据库

orapwd file=pwduip2 password=sys entries=10

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