003系统数据备份与恢复规程1.docx
《003系统数据备份与恢复规程1.docx》由会员分享,可在线阅读,更多相关《003系统数据备份与恢复规程1.docx(32页珍藏版)》请在冰豆网上搜索。
003系统数据备份与恢复规程1
江西中磊支付科技有限公司
密级:
内部
中磊第三方支付平台
系统数据备份与恢复规程
文档编号:
V1.0
项目名称:
江西中磊支付平台
编写:
王志尖
编写日期:
2014-4-7
审核:
李骏
审核日期:
2014-6-13
批准:
朱志龙
批准日期:
2014-6-17
江西中磊支付科技有限公司
2014年7月
修订记录
日期
版本
说明
作者
2014-4-7
草稿
2014-6-17
V1.0
正式签发文档
第一章引言
一.1编写目的
本文档主要描述江西中磊支付平台的数据备份与恢复的需求、策略要求以及相应的步骤,为后期实施和维护管理过程中提供数据库备份与恢复的规范。
一.2预期读者
江西中磊支付平台项目组项目经理、集成经理、开发经理、系统管理员。
一.3编写背景
在江西中磊支付平台的软件实施过程中,数据的安全至关重要,一方面数据的丢失或者数据库系统无法正常运行影响江西中磊支付平台业务应用系统的正常运作,另一方面如果系统在崩溃后不能够按照预期的要求恢复到指定状态也将影响到江西中磊支付平台业务应用系统的正常运作,例如数据冲突或者状态不一致。
特地编写此文档将对实施过程中的数据备份与恢复提供指导。
一.3.1使用者
本文档适用于参与江西中磊支付平台项目实施的工程师、江西中磊支付平台的系统管理员以及项目经理、开发经理、系统管理员。
一.4文档结构
数据备份与恢复解决方案共分四章:
第一章、引言
第二章、数据备份功能要求详述
第三章、故障与恢复策略
第四章、备份与恢复步骤
第二章数据备份功能要求详述
二.1备份环境
二.1.1备份环境
二.1.2存储网络环境
二.1.3备份方式及备份空间
根据现有环境及规划,本次备份空间主要江西中磊支付平台。
二.2备份需求
二.2.1系统级备份
二.2.1.1操作系统备份
二.2.1.2应用环境备份
二.2.2应用级备份
二.2.3文件级备份
描述:
业务系统运行中产生的业务数据文件(非数据库相关文件)。
具体内容:
脱机文件、制卡文件,社保导入文件、黑名单文件。
二.2.4数据库备份
二.3备份策略
二.3.1备份策略定义
定义好备份资源后,我们必须根据实际需要配置备份策略。
定义备份策略,涉及到以下内容:
在什么时间(备份时间,如晚上),将什么数据(备份内容,如数据库数据),以什么方式(全备份,还是增量备份)。
在我们对要备份的数据根据需要定义好备份策略后,需要书写脚本,让系统按照指定的时间、方式将需要备份的数据备份到指定的本地磁盘上。
二.3.2系统级备份策略
二.3.2.1操作系统备份
策略:
在操作系统安装完成后,对整个操作系统进行全备份一次即可。
二.3.2.2应用环境备份
策略:
在业务应用系统所需相关基础软件安装后,再对整个操作系统进行全备份一次即可。
二.3.3应用级备份策略
策略:
江西中磊支付平台应用软件安装结束后,每三个月对整个江西中磊支付平台应用软件全备份一次;江西中磊支付平台应用软件版本升级一次全备份一次;保留一份备份。
二.3.4文件级备份策略
策略:
江西中磊支付平台应用系统运行时所产生脱机文件等文件的备份,按备份策略划分为全备和增量备份。
每个月二十五号江西中磊支付平台进行全量备份;每周五江西中磊支付平台进行一次增量备份,保留一份备份。
二.3.5数据库备份策略
二.3.5.1全库备份
全库备份策略:
按备份策略划分为全备和增量备份。
江西中磊支付平台数据库运行在归档模式下,每周五进行全量备份;每天晚上进行一次增量备份,保留一份备份。
二.3.5.2用户备份
用户级备份策略:
用户级备份时间在全库备份之后,做为对全库备份的补充,采用每周做一次用户级备份,每天备份在晚上进行,用户级备份只包括所有数据库用户的导出江西中磊支付平台文件,用户级备份的江西中磊支付平台文件需要保留一份备份。
第三章故障与恢复策略
三.1故障与恢复介绍
备份系统应以不影响业务的正常运行(online状态)为前提,在业务系统遭到非法入侵、介质损坏、人为误操作造成系统崩溃、软件瘫痪或运行过慢、数据不正确或丢失后,备份系统应能提供快速的恢复手段,并能够不影响其它相关系统的正常运行,例如数据交换系统。
考虑到业务应用系统在运行过程中不同的故障,应用不同的备份恢复目标,下面做一简要描述,并对各种情况下的目标做了详细的介绍。
系统级故障是业务应用系统运行过程中,发生操作系统崩溃、或无法启动故障。
应用软件故障是支撑业务应用系统的相关软件故障。
脱机数据文件丢失故障是前置文件数据、制卡数据等非存储与数据库内的数据文件丢失类故障。
数据库故障是oracle内实例、进程、介质等故障造成数据库无法启动、瘫痪、数据丢失等故障。
三.2设计原则
※尽量透明性原则,即江西中磊支付平台客户最小程度干预备份与恢复过程。
※严格性,即备份与恢复的每一个步骤都有严格的校验。
三.3故障与恢复策略
序号
故障内容
恢复策略
1
操作系统无法启动
根据软件需求,使用最近的操作系统备份或应用环境备份进行恢复,后使用支撑业系统软件备份、数据库备份恢复系统可用性
2
支撑业务系统的应用软件故障
使用最新版本的业务应用软件备份进行恢复
3
脱机数据文件(制卡文件等非数据库内存储文件)丢失
使用最近的脱机数据文件备份进行恢复
4
数据库故障
使用最近数据库备份内容对数据库进行恢复,并依据归档日志,将数据库恢复至数据库故障点前一刻状态。
第四章备份与恢复步骤
四.1备份步骤
四.1.1系统级备份步骤
tctl-f/dev/rmt0rewind
smitmksysb
四.1.2应用软件备份步骤
四.1.2.1Tomcat备份步骤
rq=`date"+%Y%m%d"`
fname="/appback/shebao_$rq.tar"
tar–zcvf$fname/shebao/bea/
fname="/appback/tuoji_$rq.tar"
tar–zcvf$fname/tuoji/bea/
fname="/appback/heimindan_$rq.tar"
tar–zcvf$fname/heimindan/
fname="/appback/zhika_$rq.tar"
tar–zcvf$fname/zhika/bea
四.1.2.2应用发布包备份步骤
rq=`date"+%Y%m%d"`
fname="/appback/app_shebao_$rq.tar"
tar–zcvf$fname/shebao/bea/mydomain
fname="/appback/app_tuoji_$rq.tar"
tar–zcvf$fname/tuoji/bea/mydomain
fname="/appback/app_heimindan_$rq.tar"
tar–zcvf$fname/heimindan/bea/mydomain
fname="/appback/app_zhika_$rq.tar"
tar–zcvf$fname/zhika/bea
四.1.3脱机应用文件备份步骤
全备:
rq=`date"+%Y%m%d"`
fname="/appdata/zhika/full_appdata_$rq.tar"
tar–zcvf$fname/zhika/data
增量:
rq=`date"+%Y%m%d"`
fname="/appdata/zhika/inc_appdata_$rq.tar"
fname1="/appdata/zhika/tfile_$rq.txt"
find/shebao/data–mtime1–print>$fname1
tar–zcvf$fname–T$fname1
四.1.3.1黑名单文件备份步骤
全备:
rq=`date"+%Y%m%d"`
fname="/appdata/heimindan/full_appdata_$rq.tar"
tar–zcvf$fname/heimindan/data
增量:
rq=`date"+%Y%m%d"`
fname="/appdata/heimindan/inc_appdata_$rq.tar"
fname1="/appdata/heimindan/tfile_$rq.txt"
find/shebao/data–mtime1–print>$fname1
tar–zcvf$fname–T$fname1
四.1.3.2脱机文件备份步骤
全备:
rq=`date"+%Y%m%d"`
fname="/appdata/tuoji/full_appdata_$rq.tar"
tar–zcvf$fname/tuoji/data
增量:
rq=`date"+%Y%m%d"`
fname="/appdata/tuoji/inc_appdata_$rq.tar"
fname1="/appdata/tuoji/tfile_$rq.txt"
find/shebao/data–mtime1–print>$fname1
tar–zcvf$fname–T$fname1
四.1.4数据库备份步骤
四.1.4.1数据库全库备份步骤
Rman全库备份脚本
run{
allocatechannel'dev1'typediskmaxpiecesize8g;
allocatechannel'dev2'typediskmaxpiecesize8g;
allocatechannel'dev3'typediskmaxpiecesize8g;
backupfulltag'dbfull'format'/rmback/backdata/full%u_%p_%c'database;
sql'altersystemarchivelogcurrent';
backupfilesperset3archivelogalldeleteinput;
releasechanneldev1;
releasechanneldev2;
releasechanneldev3;
}
定时执行语句
0102**0(/rmback/scripts/rmback_level0.sh>/rmback/log/oracle2>&1)
四.1.4.2数据库增量备份步骤
1级
run{
allocatechannel'dev1'typediskmaxpiecesize8g;
allocatechannel'dev2'typediskmaxpiecesize8g;
allocatechannel'dev3'typediskmaxpiecesize8g;
backupincrementallevel1tag'dbL1'format'/rmback/backdata/basic%u_%p_%c'databaseskipreadonly;
sql'altersystemarchivelogcurrent';
backupfilesperset3archivelogalldeleteinput;
releasechanneldev1;
releasechanneldev2;
releasechanneldev3;
}
2级
run{
allocatechannel'dev1'typediskmaxpiecesize8g;
allocatechannel'dev2'typediskmaxpiecesize8g;
allocatechannel'dev3'typediskmaxpiecesize8g;
backupincrementallevel2tag'dbL2'format'/rmback/backdata/basic%u_%p_%c'databaseskipreadonly;
sql'altersystemarchivelogcurrent';
backupfilesperset3archivelogalldeleteinput;
releasechanneldev1;
releasechanneldev2;
releasechanneldev3;
}
四.1.4.3数据库用户备份步骤
表空间备份脚本(以users表空间为例)
run{
allocatechannel'dev1'typediskmaxpiecesize8g;
allocatechannel'dev2'typediskmaxpiecesize8g;
allocatechannel'dev3'typediskmaxpiecesize8g;
backuptag'tsusers'format'/rmback/backdata/basic%u_%p_%c'tablespaceusers;
sql'altersystemarchivelogcurrent';
backupfilesperset3archivelogalldeleteinput;
releasechanneldev1;
releasechanneldev2;
releasechanneldev3;
}
四.2恢复步骤
四.2.1系统级故障恢复步骤
四.2.1.1故障恢复步骤
A、用光盘启动,进入维护模式,用磁带机恢复,选择shrinkthefilesystem=yes。
Usemaps=no。
指定hdisk0,恢复到hdisk0上。
B、此时,hdisk1应该显示为none。
C、然后把hdisk1加入rootvg。
D、然后做镜像。
四.2.2应用软件故障恢复步骤
四.2.2.1Tomcat故障恢复步骤
tar–zxvf/appback/shebao_20100812.tar/shebao/bea/
四.2.2.2应用发布包故障恢复步骤
tar–zxvf/appback/app_shebao_20100812.tar/shebao/bea/mydomain
四.2.3脱机应用文件故障恢复步骤
四.2.3.1黑名单文件故障恢复步骤
全恢复:
tar–zxvf/appdata/heimindan/full_appdata_20100812.tar/shebao/data
增量恢复:
tar–zxvf/appdata/heimindan/inc_appdata_20100812.tar/shebao/data
四.2.3.2脱机文件故障恢复步骤
全恢复:
tar–zxvf/appdata/tuoji/full_appdata_20100812.tar/shebao/data
增量恢复:
tar–zxvf/appdata/tuoji/inc_appdata_20100812.tar/shebao/data
四.2.4数据库故障恢复步骤
四.2.4.1参数文件损坏的恢复
这里主要是指spfile文件损坏。
四.2.4.1.1从spfile或pfile文件备份中恢复
当存在spfile文件的备份时,将备份的文件重新拷贝到$ORACLE_HOME/dbs下,然后启动数据库
$cpbak/bakspfileorcl.ora$ORACLE_HOME/dbs/spfileorcl.ora
当存在pfile文件的备份时,可以用以下步骤恢复spfile
SQL>startuppfile='$ORACLE_HOME/dbs/initorcl.ora'
SQL>createspfilefrompfile
四.2.4.1.2从RMAN备份中恢复
命令:
rmantarget/catalogrman/rman@orcl160
startupnomount
restorespfile;
shutdownimmediate;
startup
具体操作:
$rmantarget/
RecoveryManager:
Release10.2.0.1.0-Productionon星期一5月1415:
27:
182007
Copyright(c)1982,2005,Oracle.Allrightsreserved.
connectedtotargetdatabase(notstarted)
RMAN>connectcatalogrman/rman@orcl160
connectedtorecoverycatalogdatabase
RMAN>startupnomount
startupfailed:
ORA-01078:
failureinprocessingsystemparameters
LRM-00109:
couldnotopenparameterfile'/opt/oracle/oracle/product/10.2.0/db_1/dbs/initorcl.ora'
startingOracleinstancewithoutparameterfileforretrivalofspfile
Oracleinstancestarted
TotalSystemGlobalArea159383552bytes
FixedSize2019224bytes
VariableSize67108968bytes
DatabaseBuffers83886080bytes
RedoBuffers6369280bytes
RMAN>restorespfilefromautobackup;
Startingrestoreat2007-05-1415:
28:
52
allocatedchannel:
ORA_DISK_1
channelORA_DISK_1:
sid=36devtype=DISK
allocatedchannel:
ORA_DISK_2
channelORA_DISK_2:
sid=35devtype=DISK
allocatedchannel:
ORA_DISK_3
channelORA_DISK_3:
sid=34devtype=DISK
channelORA_DISK_1:
lookingforautobackuponday:
20070514
channelORA_DISK_2:
lookingforautobackuponday:
20070514
channelORA_DISK_2:
skipped,autobackupalreadyfound
channelORA_DISK_3:
lookingforautobackuponday:
20070514
channelORA_DISK_3:
skipped,autobackupalreadyfound
channelORA_DISK_1:
autobackupfound:
c-1135325536-20070514-05
channelORA_DISK_1:
SPFILErestorefromautobackupcomplete
Finishedrestoreat2007-05-1415:
29:
04
RMAN>shutdownimmediate;
Oracleinstanceshutdown
RMAN>startup
connectedtotargetdatabase(notstarted)
Oracleinstancestarted
databasemounted
databaseopened
TotalSystemGlobalArea285212672bytes
FixedSize2020192bytes
VariableSize155192480bytes
DatabaseBuffers121634816bytes
RedoBuffers6365184bytes
四.2.4.2口令文件损坏的恢复
如果是口令文件损坏,那么删除原口令文件,并且新建一个口令文件。
$rm$ORACLE_HOME/dbs/PWDorcl.ora
$orapwdfile=$ORACLE_HOME/dbs/PWDorcl.orapassword=oracleentries=5
四.2.4.3归档日志文件损坏的恢复
如果是归档日志文件损坏,那么在损坏的归档日志文件之前的备份将不能进行完全恢复,所以应当做如下操作:
1.删除损坏的归档日志文件及之前的归档日志文件
检查归档日志文件
RMAN>CROSSCHECKARCHIVELOGALL;
在RMAN中删除不需要的归档日志
RMAN>DELETENOPROMPTARCHIVELOGUNTILSEQUENCE=797;
2.删除RMAN中已经无用的归档日志备份
查询RMAN中已经无用的归档日志备份
RMAN>listbackupofarchivelogall;
RMAN>listbackupofarchivelogallsummary;
删除RMAN中已经无用的归档日志备份,重点在查询Seq值
BSKeySizeDeviceTypeElapsedTimeCompletionTime
-----------------------------------------------------------
123062.00KDISK00:
00:
012007-05-1414:
49:
06
BPKey:
12308Status:
AVAILABLECompressed:
YESTag:
TAG20070514T144904
PieceName:
/opt/oracle/backup/archORCL_a0ihn5v1_320_1
ListofArchivedLogsinbackupset12306
ThrdSeqLowSCNLowTimeNextSCNNextTime