最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

用Shell脚本在推出的RAC节点上批量部署32个Oracle11gR2RAC备份恢复案例场景的方法PART1

来源:动视网 责编:小采 时间:2020-11-09 10:22:25
文档

用Shell脚本在推出的RAC节点上批量部署32个Oracle11gR2RAC备份恢复案例场景的方法PART1

用Shell脚本在推出的RAC节点上批量部署32个Oracle11gR2RAC备份恢复案例场景的方法PART1:5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份恢复案例场景模拟脚本工作原理基本工作原理是:读者按照以上推送设置的要求安装 5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份
推荐度:
导读用Shell脚本在推出的RAC节点上批量部署32个Oracle11gR2RAC备份恢复案例场景的方法PART1:5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份恢复案例场景模拟脚本工作原理基本工作原理是:读者按照以上推送设置的要求安装 5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份


5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份恢复案例场景模拟脚本工作原理基本工作原理是:读者按照以上推送设置的要求安装

5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景

5.1备份恢复案例场景模拟脚本工作原理

基本工作原理是:读者按照以上推送设置的要求安装好成套Oracle11gR2RAC环境后,复用以上的PXE推送端主机作为部署平台,在每套推出的Oracle11gR2RAC环境中部署32个Oracle11gR2RAC备份恢复案例场景脚本。脚本基于网络执行并批量部署;脚本同时支持下载到每一台Oracle11gR2RAC节点主机本地运行。脚本能模拟和评测每一套环境每一个备份恢复场景的恢复结果。

32个备份恢复场景模拟脚本调用一个公共子程序库“bclcustom-subprogram”。在该公共子程序库里面编写了各个备份恢复场景标准步骤。32个备份恢复场景模拟脚本实际上是根据场景模拟需要组合这些标准步骤来完成相应的场景模拟的。

公共子程序库“bclcustom-subprogram”如下:

####

####0SubprogramsBegin

###0.1NormalStructureBegin

###

#sub_gettinghas$1$2

sub_getting(){

echo””

echo“———————————————-LAB$1———————————————-”

echo”$2″

echo“———————————————-LAB$1———————————————-”

echo””

echo””

echo“******************”

echo“你的主机信息如下:”

echo“******************”

ifconfigeth0|head-n2|tail-n1|cut-f2-d:|cut-f1-d‘‘

echo””

hostname

echo””

uname-a

echo””

echo””

}

sub_detecting(){

/u01/app/11.2.0/grid/bin/crs_stat-t

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

conn/assysdba

setechooff

setfeedbackoff

@/home/oracle/ptable.sql;

quit

!

fi

echo””

}

sub_revealing(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

conn/assysdba

setechooff

setfeedbackoff

@/home/oracle/ttable.sql;

quit

!

fi

echo””

}

sub_resultscoring(){

/u01/app/11.2.0/grid/bin/crs_stat-t

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

setechooff

setfeedbackoff

@/home/oracle/rtable.sql;

quit

!

fi

echo””

}

sub_clearing(){

rm-f/home/oracle/ptable.sql

rm-f/home/oracle/ctable.sql

rm-f/home/oracle/ttable.sql

rm-f/home/oracle/rtable.sql

rm-f/usr/bin/bclcustom.sh

rm-f/home/oracle/asm

rm-f/home/oracle/bclcustom-subprogram

}

sub_clearing_excludertable(){

rm-f/home/oracle/ptable.sql

rm-f/home/oracle/ctable.sql

rm-f/home/oracle/ttable.sql

rm-f/usr/bin/bclcustom.sh

rm-f/home/oracle/asm

rm-f/home/oracle/bclcustom-subprogram

}

###

###0.1NormalStructureEnd

###0.2DatabaseOperationBegin

##0.2.1DatabaseSRVCTlOperationBegin

##

sub_shutdowning_normal(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“/u01/app/oracle/product/11.2.0/dbhome_1/bin/srvctlstopdatabase-d$v_dbname”

fi

echo””

}

##

##0.2.1DatabaseSRVCTlOperationEnd

##0.2.2DatabaseASMOperationBegin

##

#sub_destroyinghas$1

sub_destroying(){

#$1:system*

##undotbs1*

##undotbs2*

##sysaux*

##example*

##users*

##group*

##current*

#

su–grid-c“exportORACLE_SID=+ASM1;exportORACLE_HOME=/u01/app/11.2.0/grid;asmcmd“

find/$1

exit

!

sleep15

sync

v_path1=`cut-f2-d‘+’/home/oracle/asm|tr-d[:blank:]`

foriin$v_path1

do

v_path2=”+”$i

su–grid-c“exportORACLE_SID=+ASM1;exportORACLE_HOME=/u01/app/11.2.0/grid;asmcmd“<

rm$v_path2

exit

!

done

echo””

}

##

##0.2.2DatabaseASMOperationEnd

##0.2.3DatabaseSQLOperationBegin

##

sub_startuping_node1mount(){

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

conn/assysdba

startupmountexclusive

quit

!

fi

echo””

}

sub_creating(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

setechooff

setfeedbackoff

@/home/oracle/ctable.sql;

quit

!

fi

echo””

}

sub_scripting_controlfile_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

echo“Nextmomentcontrolscriptisgoingtobecreate……”

echo“Displaythespidnumberofsessionhere:”

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

selectinstance_numberfromv\$instance;

selectspidfromv\$processp,v\$sessions,v\$mystatmwherep.addr=s.paddrandm.sid=s.sidandrownum=1;

alterdatabasebackupcontrolfiletotrace;

quit

!

fi

echo“”

}

sub_offlining_users_immediate(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

setechooff

setfeedbackoff

selectinstance_numberfromv\$instance;

altertablespaceusersofflineimmediate;

quit

!

fi

echo””

}

sub_offlining_tbsocp05_test_immediate(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

setechooff

setfeedbackoff

selectinstance_numberfromv\$instance;

altertablespacetbsocp05_testofflineimmediate;

quit

!

fi

echo””

}

sub_shutdowning_abort(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“/u01/app/oracle/product/11.2.0/dbhome_1/bin/srvctlstopdatabase-d$v_dbname-oabort”

fi

}

sub_altering_default_tablespace(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

conn/assysdba

alterdatabasedefaulttablespaceexample;

quit

!

fi

echo“”

}

sub_dropping_users(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

echo“***FROMTHENON:DROP***”

su–oracle-c“sqlplus/nolog”<

conn/assysdba

dropusershcascade;

dropuseroecascade;

droptablespaceusersincludingcontentsanddatafiles;

quit

!

fi

echo””

}

##

##0.2.3DatabaseSQLOperationEnd

##0.2.4DatabaseRMANOperationBegin

##

#sub_backingup_controlfile_nocataloghas$1

sub_backingup_controlfile_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

backuptag“$1″currentcontrolfile;

quit

!

fi

echo“”

}

sub_deleting_backup_controlfile_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

deletenopromptbackupofcontrolfile;

deletenopromptcopyofcontrolfile;

!

fi

echo“”

}

sub_resync_catalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

v_ip=$(ifconfig|grep’192\.168\.0′|head-n1|cut-d.-f4|cut-d‘‘-f1)

grep‘LABSADD’/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

if[$?=='1']

then

echo””>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo“rcat=”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”(DESCRIPTION=”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.90)(PORT=1521))”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”(CONNECT_DATA=”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”(SERVER=DEDICATED)”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”(SERVICE_NAME=rcat.example.com)”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”)”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo”)”>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo””>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

echo‘#LABSADD’>>/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

fi

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

echo“***ConnectingCatalog***”

su–oracle-c“rmantargetsys/oracle_4U@$v_dbnamecatalogu90/oracle_4U@rcat”<

resynccatalog;

!

fi

echo””

}

##

##0.2.4DatabaseRMANOperationEnd

##0.2.5DatabaseSQL/RMANCombinedOperationBegin

##

#sub_onlining_users_nocataloghas$1

sub_onlining_users_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

selectinstance_numberfromv\$instance;

altertablespaceusersonline;

quit

!

fi

echo””

#rman

echo“***AFTERTABLESPACEONLINE***”

echo“***BACKUPAGAIN***”

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

backuptag“$1″tablespaceusers;

!

fi

echo””

}

#sub_offlining_users_nocataloghas$1

sub_offlining_users_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

selectinstance_numberfromv\$instance;

altertablespaceusersoffline;

quit

!

fi

echo””

#rman

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

backuptag“$1″tablespaceusers;

!

fi

echo””

}

#sub_readingwrite_users_nocataloghas$1

sub_readingwrite_users_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

selectinstance_numberfromv\$instance;

altertablespaceusersreadwrite;

quit

!

fi

echo””

#rman

echo“***AFTERTABLESPACEREWRITE***”

echo“***BACKUPAGAIN***”

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

backuptag“$1″tablespaceusers;

!

fi

echo””

}

#sub_readingonly_users_nocataloghas$1

sub_readingonly_users_nocatalog(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“sqlplus/nolog”<

connsys/oracle_4U@$v_dbnameassysdba

selectinstance_numberfromv\$instance;

altertablespaceusersreadonly;

quit

!

fi

echo””

#rman

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

backuptag“$1″tablespaceusers;

!

fi

echo””

}

sub_deleting_early_online_backup_users(){

v_dbname=`cat/home/oracle/dbname|tr-d[:blank:]`

if[-f/u01/app/11.2.0/grid/dbs/hc_+ASM1.dat]

then

echo“***DELETETHEEARLYONLINEBACKUPOFUSERS***”

echo“***DELETETHEEARLYREADWRITEBACKUPOFUSERS***”

su–oracle-c“rmantargetsys/oracle_4U@$v_dbname”<

deletenopromptbackupoftablespaceusers;

deletenopromptcopyoftablespaceusers;

!

sub_deleting_backup_controlfile_nocatalog

fi

echo””

}

##

##0.2.5DatabaseSQL/RMANCombinedOperationEnd

###0.2DatabaseOperationEnd

####0SubprogramsEnd

####

文档

用Shell脚本在推出的RAC节点上批量部署32个Oracle11gR2RAC备份恢复案例场景的方法PART1

用Shell脚本在推出的RAC节点上批量部署32个Oracle11gR2RAC备份恢复案例场景的方法PART1:5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份恢复案例场景模拟脚本工作原理基本工作原理是:读者按照以上推送设置的要求安装 5.用Shell脚本在推出的节点上批量部署32个Oracle11gR2RAC备份恢复案例场景5.1备份
推荐度:
标签: 批量 方法 oracle
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top