加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

oracle 单机转rac

(2015-03-24 22:31:06)
标签:

db2

it

杭州美创科技有限公司

分类: oracle基础知识

将生产库数据库软件打包
tar -cf oracle10g.tar /oracle

将数据库软件拷到一节点,并解压
tar -xvf oracle10g.tar

热备数据文件
alter database begin backup

创建standby控制文件
ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/control01.ctl';


将数据文件、standby控制文件拷到节点一
scp * 172.16.10.16:/oradata/bsrun/

生产库end backup
alter database end backup;

节点一启动数据库到mount状态
alter database mount;

将数据文件拷贝到asm里,重命名数据文件
rman target /
copy datafile '/oradata/bsrun/sysaux01.dbf' to '+DATA/BSRUN/sysaux01.dbf';
copy datafile '/oradata/bsrun/system01.dbf' to '+DATA/BSRUN/system01.dbf';
copy datafile '/oradata/bsrun/temp01.dbf' to '+DATA/BSRUN/temp01.dbf';
copy datafile '/oradata/bsrun/undotbs01.dbf' to '+DATA/BSRUN/undotbs01.dbf';
copy datafile '/oradata/bsrun/users01.dbf'   to '+DATA/BSRUN/users01.dbf';

sqlplus / as sysdba
alter database rename file '/oradata/bsrun/sysaux01.dbf' to '+DATA/BSRUN/sysaux01.dbf';
alter database rename file '/oradata/bsrun/system01.dbf' to '+DATA/BSRUN/system01.dbf';
alter database rename file '/oradata/bsrun/temp01.dbf' to '+DATA/BSRUN/temp01.dbf';
alter database rename file '/oradata/bsrun/undotbs01.dbf' to '+DATA/BSRUN/undotbs01.dbf';
alter database rename file '/oradata/bsrun/users01.dbf'   to '+DATA/BSRUN/users01.dbf';

节点一删除本地数据文件
rm -rf *.dbf

分时段将生产库归档拷贝过来,应用归档
scp * 172.16.10.16:/home/oracle/archbsrun/

recover standby database;
ORA-00279: change 407509 generated at 09/03/2014 13:24:45 needed for thread 1
ORA-00289: suggestion : /home/oracle/archbsrun/1_39_857294213.dbf
ORA-00280: change 407509 for thread 1 is in sequence #39


Specify log: {=suggested | filename | AUTO | CANCEL}
auto


停止生产库,将归档、控制文件、在线日志拷贝到节点一
scp *.ctl 172.16.10.16:/oradata/bsrun/
scp *.log 172.16.10.16:/oradata/bsrun/
scp * 172.16.10.16:/home/oracle/archbsrun/


在节点一打开数据库到mount状态,重命名数据文件、recover database
sqlplus / as sysdba
alter database rename file '/oradata/bsrun/sysaux01.dbf' to '+DATA/BSRUN/sysaux01.dbf';
alter database rename file '/oradata/bsrun/system01.dbf' to '+DATA/BSRUN/system01.dbf';
alter database rename file '/oradata/bsrun/temp01.dbf' to '+DATA/BSRUN/temp01.dbf';
alter database rename file '/oradata/bsrun/undotbs01.dbf' to '+DATA/BSRUN/undotbs01.dbf';
alter database rename file '/oradata/bsrun/users01.dbf'   to '+DATA/BSRUN/users01.dbf';

SQL> recover database;
ORA-00279: change 407674 generated at 09/03/2014 13:31:56 needed for thread 1
ORA-00289: suggestion : /home/oracle/archbsrun/1_44_857294213.dbf
ORA-00280: change 407674 for thread 1 is in sequence #44


Specify log: {=suggested | filename | AUTO | CANCEL}
auto

打开数据库
alter database open

升级数据库到11204
select comp_name,version,status from dba_registry;

select object_name,status from dba_objects where owner='SYS' and status<>'VALID';

select count(*),status from dba_objects group by status;
select count(*),status from invalid_20140819 group by status;
select object_name,object_type from dba_objects where (object_name,object_type) in (select object_name,object_type from dba_objects where owner='SYS') and owner='SYSTEM';


cp $ORACLE_HOME/rdbms/admin/utlu112i.sql /tmp/upgrade
@utlu112i.sql


*.archive_lag_target=300
*.compatible='11.2.0.4.0'
*.control_files='/oradata/control01.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='bsrun'
*.dispatchers='(protocol=TCP)'
*.fal_client='BSRUN'
*.fal_server='RZBSRUN'
*.job_queue_processes=10
*.log_archive_dest_1='location=/oradata/arch'
*.log_archive_dest_2='service=rzbsrun lgwr sync reopen=15 max_failure=10 net_timeout=30 optional noaffirm'
*.log_archive_dest_state_2='DEFER'
*.open_cursors=300
*.pga_aggregate_target=10737418240
*.processes=2000
*.remote_login_passwordfile='EXCLUSIVE'
*.sessions=3000
*.sga_max_size=64424509440
*.sga_target=64424509440
*.shared_pool_size=5368709120
*.shared_servers=20
*.java_pool_size=314572800
*.standby_archive_dest='/oradata/arch'
*.standby_file_management='MANUAL'
*.undo_management='AUTO'
*.undo_retention=10800
*.undo_tablespace='UNDOTBS1'
*.diagnostic_dest='/oracle/app'

 

startup upgrade

cp dbs/
@?/rdbms/admin/catupgrd.sql

shutdown immediate
startup
@?/rdbms/admin/catbundle.sql  应用psu
@?/rdbms/admin/utlrp.sql
shutdown immediate
startup

exec dbms_stats.gather_dictionary_stats


迁移一节点日志文件到ASM中
在asm中创建对应的日志文件
alter database drop logfile group 1
alter database add logfile group 1 '+data/bsrun/onlineredo/redo1_01' size 1024m;

alter database drop logfile group 2
alter database add logfile group 2 '+data/bsrun/onlineredo/redo1_02' size 1024m;

alter database drop logfile group 3
alter database add logfile group 3 '+data/bsrun/onlineredo/redo1_03' size 1024m;

alter database drop logfile group 4
alter database add logfile group 4 '+data/bsrun/onlineredo/redo1_04' size 1024m;

alter database drop logfile group 5
alter database add logfile group 5 '+data/bsrun/onlineredo/redo1_05' size 1024m;

 


迁移控制文件到ASM,修改参数文件中控制文件位置:
alter system set control_files='+DATA/bsrun/controlfile/control01.ctl' scope=spfile;

启动数据库到nomount状态,恢复控制文件
restore controlfile from '/oradata/bsrun/control01.ctl';

打开数据库
alter database open;


单机转rac
bsrun1.__oracle_base='/oracle/app'#ORACLE_BASE set from environment
bsrun2.__oracle_base='/oracle/app'#ORACLE_BASE set from environment
*.audit_file_dest='/oracle/app/admin/bsrun/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='+DATA/bsrun/controlfile/control01.ctl'#Restore Controlfile
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_name='bsrun'
*.db_recovery_file_dest='+DATA'
*.db_recovery_file_dest_size=4259315712
*.deferred_segment_creation=FALSE
*.diagnostic_dest='/oracle/app'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
orcl1.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.247)(PORT = 1521))'
orcl2.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.248)(PORT = 1521))'
*.log_archive_dest_1='location=/oradata/arch'
*.log_archive_format='%t_%s_%r.dbf'
*.memory_max_target=42949672960
*.memory_target=42949672960
*.open_cursors=10000
*.processes=3000
*.remote_listener='bsrun-scan:1521'
*.remote_login_passwordfile='EXCLUSIVE'
*.sessions=5505
*.sga_max_size=34359738368
*.sga_target=34359738368
*.cluster_database=TRUE
bsrun1.instance_number=1
bsrun2.instance_number=2
bsrun2.thread=2
bsrun1.thread=1
bsrun2.undo_tablespace='UNDOTBS2'
bsrun1.undo_tablespace='UNDOTBS1'

create SPFILE='+DATA/bsrun/spfilebsrun.ora' from pfile;

修改参数文件路径
修改双节点$ORACLE_HOME/dbs 目录下参数文件
一节点:
创建initbsrun1.ora
SPFILE='+DATA/bsrun/spfilebsrun.ora'
二节点:
创建initbsrun2.ora
SPFILE='+DATA/bsrun/spfilebsrun.ora'

创建二节点undo
create undo tablespace undotbs2 datafile '+DATA/bsrun/datafile/undotbs02.dbf' size 1G autoextend on;

创建二节点日志文件
alter database add logfile threads 2 group 6 '+data/onlineredo/redo2_01' size 1024m;
alter database add logfile threads 2 group 7 '+data/onlineredo/redo2_02' size 1024m;
alter database add logfile threads 2 group 8 '+data/onlineredo/redo2_03' size 1024m;
alter database add logfile threads 2 group 9 '+data/onlineredo/redo2_04' size 1024m;
alter database add logfile threads 2 group 10 '+data/onlineredo/redo2_05' size 1024m;

激活2节点redo
alter database enable thread 2;


刷新rac组件
SQL>spool off
SQL>spool catclust.txt
SQL>@?/rdbms/admin/catclust.sql
SQL>spool off

 

数据库及实例加入集群管理
su - oracle

srvctl add database -d bsrun -o /u01/app/oracle/product/11.2.0/db_1   
srvctl add instance -d bsrun -i bsrun1 -n s1-11g
srvctl add instance -d bsrun -i bsrun2 -n s2-11g


 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有