Oracle 11g Data Guard Standby配置文档格式.docx
《Oracle 11g Data Guard Standby配置文档格式.docx》由会员分享,可在线阅读,更多相关《Oracle 11g Data Guard Standby配置文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
SQL>
archiveloglist;
DatabaselogmodeArchiveMode
AutomaticarchivalEnabled
Archivedestination/oracle/oradata/jssbook/archivelog
Oldestonlinelogsequence0
Nextlogsequencetoarchive0
Currentlogsequence74
#如果没有则开启归档
altersystemsetlog_archive_dest_1='
location=/oracle/oradata/jssbook/archivelog'
;
shutdownimmediate
startupmount
alterdatabasearchivelog;
alterdatabaseopen
2.开启forcelogging
#查询是否开启forcelogging
selectforce_loggingfromv$database;
FOR
YES
#如果没有则开启
alterdatabaseforcelogging;
alterdatabasenoforcelogging;
#取消force_logging,不执行
3.创建密钥文件(如果没有的话)
#通dbca创建的数据会创建密钥文件,windows下该密钥文件名为:
PWD[sid].ora
$orapwdfile=/oracle/app/product/11.2.0/dbs/orapwjssbookpassword=Fih123456entries=30force=yignorecase=y
复制密钥文件至standby服务器
$scp/oracle/app/product/11.2.0/dbs/orapwjssbookoracle@10.134.140.176:
/oracle/app/product/11.2.0/dbs/orapwjsspdg
4.配置standbyredolog
#当然standbyredolog不是必须配置的,至于它的作用去XX查吧,不解释!
一般standbyredolog比redolog多一组,大小和redolog最好一样,所以先查下redo的大小,我这里用建库默认的50M。
alterdatabaseaddstandbylogfilegroup4('
/oracle/oradata/jssbook/standbyredo01.log'
)size50M;
alterdatabaseaddstandbylogfilegroup5('
/oracle/oradata/jssbook/standbyredo02.log'
alterdatabaseaddstandbylogfilegroup6('
/oracle/oradata/jssbook/standbyredo03.log'
5.配置primary初始化参数
#由于spfile无法直接修改,所以先通过spfile创建pfile,再通过修改后pfile创建为spfile。
createpfile='
/oracle/backup/pfile_jssbook.ora'
fromspfile;
$vi/oracle/backup/pfile_jssbook.ora
以下内容是修改过的
*.db_unique_name=jssbook
*.log_archive_config='
dg_config=(jssbook,jsspdg)'
*.log_archive_dest_2='
service=jsspdg_10.134.140.176archasyncvalid_for=(online_logfiles,primary_role)db_unique_name=jsspdg'
#主库传输redo到备库可通过两种进程:
arch,lgwr(实时传输),模式有:
sync(同步),async(异步)。
*.log_archive_dest_state_2=enable
*.fal_server=jsspdg_10.134.140.176
*.fal_client=jsspre_10.134.140.175
*.db_file_name_convert='
/oracle/oradata/jssbook'
'
/oracle/oradata/jsspdg'
#主备库数据文件如果存放路径不一样,这个参数就是自动转换映射的。
*.log_file_name_convert='
*.standby_file_management=auto
#这个参数好啊,主库做了新增删除表空间,数据文件等动作时就会自动传输到库备。
#现在来看下参数文件内容:
[oracle@FIHSER-V49~]$cat/oracle/backup/pfile.ora
jssbook.__db_cache_size=197132288
jssbook.__java_pool_size=4194304
jssbook.__large_pool_size=4194304
jssbook.__oracle_base='
/oracle/app'
#ORACLE_BASEsetfromenvironment
jssbook.__pga_aggregate_target=272629760
jssbook.__sga_target=515899392
jssbook.__shared_io_pool_size=0
jssbook.__shared_pool_size=301989888
jssbook.__streams_pool_size=0
*.audit_file_dest='
/oracle/app/admin/jssbook/adump'
*.audit_trail='
db'
*.compatible='
11.2.0.3.0'
*.control_files='
/oracle/oradata/jssbook/control01.ctl'
/oracle/oradata/jssbook/control02.ctl'
*.db_block_size=8192
*.db_domain='
'
*.db_name='
jssbook'
*.db_unique_name='
*.diagnostic_dest='
*.dispatchers='
(PROTOCOL=TCP)(SERVICE=jssbookXDB)'
*.fal_client='
jssbook_10.134.140.175'
*.fal_server='
jsspdg_10.134.140.176'
*.log_archive_dest_1='
*.log_archive_dest_state_2='
enable'
*.memory_target=786432000
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='
EXCLUSIVE'
*.standby_file_management='
auto'
*.undo_tablespace='
UNDOTBS1'
再将修改的pfile创建为spfile
createspfilefrompfile='
startup
6.创建standby控制文件
alterdatabasecreatestandbycontrolfileas'
/oracle/backup/jsspdg_control01.ctl'
7.复制文件至standby
#需要的文件包括刚创建的初始化文件,控制文件,数据文件,理论上redo,standbyredo及archivelog文件是不需复制过去,这些文件stadnby会重建,但我们还是复制过去吧,后面可能会遇到一个错误需要
$scp/oracle/backup/pfile_jssbook.oraoracle@10.134.140.176:
/oracle/backup/pfile_jsspdg.ora
#控制文件一般有三份冗余,这里copy2份过去
$scp/oracle/backup/jsspdg_control01.ctloracle@10.134.140.176:
/oracle/oradata/jsspdg/control01.ctl
$scp/oracle/backup/jsspdg01.ctloracle@10.134.140.176:
/oracle/oradata/jsspdg/control02.ctl
#可能很多地方会建议用ramn备份现到standb端还原,11g可以直接copy文件过去即可,查询都有哪些数据文件,
selectfile_name,tablespace_namefromdba_data_filesorderby2;
FILE_NAMETABLESPACE_NAME
/oracle/oradata/jssbook/sysaux01.dbfSYSAUX
/oracle/oradata/jssbook/system01.dbfSYSTEM
/oracle/oradata/jssbook/undotbs01.dbfUNDOTBS1
/oracle/oradata/jssbook/users01.dbfUSERS
/oracle/oradata/jssbook/ybh01.dbfYBH
altertablespaceybhbeginbackup;
hostscp/oracle/oradata/jssbook/ybh01.dbforacle@10.134.140.176:
/oracle/oradata/jsspdg/ybh01.dbf
altertablespaceybhendbackup;
重复以上三步把所有查询到的数据文件copy至standby服务器上,当然也可以直接shutdownimmediate直接将所有这些文件copy至standby服务器,记得把redo,standbyredo,archivelog也弄过去。
8.配置listener和网络服务名
#vi/oracle/app/product/11.2.0/network/admin/listener.ora
这里我把默认的1521端口改为了15210,使其内容如下:
#listener.oraNetworkConfigurationFile:
/oracle/app/product/11.2.0/network/admin/listener.ora
#GeneratedbyOracleconfigurationtools.
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=jssbook)
(ORACLE_HOME=/oracle/app/product/11.2.0)
(SID_NAME=jssbook)
)
LISTENER=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.134.140.175)(PORT=15210))
ADR_BASE_LISTENER=/oracle/app
#重启监听服务
$lsnrctlstop
$lsnrctlstart
$vi/oracle/app/product/11.2.0/network/admin/tnsnames.ora
配置网络服务名,使其内容如下:
#tnsnames.oraNetworkConfigurationFile:
/oracle/app/product/11.2.0/network/admin/tnsnames.ora
JSSPDG_10.134.140.176=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.134.140.176)(PORT=15210))
(CONNECT_DATA=
(SID=JSSPDG)
(SERVER=DEDICATED)
JSSBOOK_10.134.140.175=
(SID=JSSBOOK)
二.Standby端的准备
1.创建日志输出路径
$mkdir-p/oracle/app/admin/jsspdg/adump
$mkdir-p/oracle/app/admin/jsspdg/dpdump
2.修改Standby初始化参数
$vi/oracle/backup/pfile_jsspdg.ora
使其内容如下:
/oracle/app/admin/jsspdg/adump'
/oracle/oradata/jsspdg/control01.ctl'
/oracle/oradata/jsspdg/control02.ctl'
jsspdg'
location=/oracle/oradata/jsspdg/archivelog'
service=jssbook_10.134.140.175archasyncvalid_for=(online_logfiles,primary_role)db_unique_name=jssbook'
通过修改后的pfile创建spfile
$sqlplus/nolog
conn/assysdba
createspfilefrompfile='
/oracle/backup/pfile_jsspdg.ora'
3.数据库启动到mount状态
startupmount
要保证数据库可以启动到mount状态,如果启动到了mount状态你没有觉得奇怪吗?
standby的控制文件是从primary创建过来的,所以控制文件中记录的数据文件路径是/oracle/oradata/jssbook,但在standby中数据文件的路径是/oracle/oradata/jsspdg啊,你发现了这个问题说明你认真了,这就是初始化参数*.log_file_name_convert的作用,它会按设定值进行路径转换的。
不信你看看以下参数:
showparameterconvert;
NAMETYPEVALUE
-----------------------------------------------------------------------------
db_file_name_convertstring/oracle/oradata/jssbook,/orac
le/oradata/jsspdg
log_file_name_convertstring/oracle/oradata/jssbook,/orac
selectnamefromv$datafile;
NAME
--------------------------------------------------------------------
/oracle/oradata/jsspdg/system01.dbf
/oracle/oradata/jsspdg/sysaux01.dbf
/oracle/oradata/jsspdg/undotbs01.dbf
/oracle/oradata/jsspdg/users01.dbf
4.配置监听和网络服务名
$vi/oracle/app/product/11.2.0/network/admin/listener.ora
(GLOBAL_DBNAME=jsspdg)
(SID_NAME=jsspdg)
重启监听服务
修改网络服务名
$vi/oracle/app/product/11.2.0/network/admin/tnsnames.ora
/oracle/a