Datagurad related services
datagurad 的优点
一、灾难恢复、数据保护、高可用性
switchover and failover ,最少的当机时间
二、完全的数据保护
三、高效率使用系统资源
standby 数据库使用REDO更新TABLE,还可以用来做备份、查询、报表、减轻主库的负载,节省CPU和IO资源,如果使用逻辑STANDBY,还可以用来做数据库升级,查询。
四、可以平衡数据的可用性与性能
datagurad 有三中模式 maximum protection(最大保护), maximum availability(最大可用), and maximum performance(最大性能)
五、自动GAP检测和解决
如果主库因为网络问题无法传送日志到备库,那么等网络恢复后,可以自动继续接收。
六、集中简单管理
DATAGURAD提供了多种管理方式 CMD、图形、DGMGRL
七、整合到数据了
DATAGURAD在企业版数据库里就有,不需要单独安装
八、自动角色切换
redo transport services
主要有以下任务:
传输REDO DATA从主库到备库
管理解决归档日志因为网络失败
强制数据库模式
自动监测
log apply services
应用从主库传输过来的日志,保持和主库数据一致性 (物理备库)
应用SQL 逻辑备库
角色转换:
switchover:在主库和备库之间进行转换,并且并有数据丢失
failover :当主库不可用时,将备库切换成主库。切换后备库将不能在切换成备库。
DATAGURAD三种保护模式:
最大保护模式:
当主库发生错误时,此模式下将没有数据丢失,提供此等级的保护,REDO数据要求能恢复任何一个事务。也就说REDO必须写入本地的在线日志和STANDBY日志在事务提交前,如果主库发生错误不能写 日志到备库,那么主库将关闭
最大可用模式:
当主库发生错误时,此模式下将没有数据丢失,提供此等级的保护,REDO数据要求能恢复任何一个事务。也就说REDO必须写入本地的在线日志和STANDBY日志在事务提交前,如果主库发生错误不能写 日志到备库,主库可以不关闭,此时数据库将处于最大性能模式直到错误解决,主库可以自动恢复到最大可用模式
最大的性能模式:
此模式下,也提供最搞的数据保护并且不映像主库性能,允许事务提交后,写到本地的在线日志可以恢复刚提交的事务
物理备库创建步骤:
一将主库置于强制日志模式:
alter database force logging
二、创建一个口名文件
orapwd file=initorcl password=boson entries=10;
三、配置备库重做日志
最大保护和可用模式需要备库重做日志以LGWR ASYNC传输,DATAGURAD能恢复和应用更多的STANDBY重做日志 相比克隆的归档日志:
相对于最大可用模式》你必须创建多组STANDBY重做日志和在线日志一样
和主库一样的日志大小、比在线日志多一组日志
创建STANDBY日志组:
alter database add standby logfile group n ” size 50m;
也可以指定THREAD
alter database add standby logfile thread 5 (”)size 50m;
验证添加的STANDBY日志组:
SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;
GROUP# THREAD# SEQUENCE# ARC STATUS
———- ———- ———- — ———-
3 1 16 NO ACTIVE
4 0 0 YES UNASSIGNED
5 0 0 YES UNASSIGNED
四、设置主库的参数文件
主库:
DB_NAME=chicago
DB_UNIQUE_NAME=chicago
LOG_ARCHIVE_CONFIG=’DG_CONFIG=(chicago,boston)’
CONTROL_FILES=’/arch1/chicago/control1.ctl’, ‘/arch2/chicago/control2.ctl’
LOG_ARCHIVE_DEST_1=
’LOCATION=/arch1/chicago/
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=chicago’
LOG_ARCHIVE_DEST_2=
’SERVICE=boston LGWR ASYNC
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=boston’
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
LOG_ARCHIVE_MAX_PROCESSES=30
以下是切换时主库需要的参数:
FAL_SERVER=boston
FAL_CLIENT=chicago
DB_FILE_NAME_CONVERT=’boston’,'chicago’
LOG_FILE_NAME_CONVERT=
’/arch1/boston/’,'/arch1/chicago/’,'/arch2/boston/’,'/arch2/chicago/’
STANDBY_FILE_MANAGEMENT=AUTO
DB_NAME :所有备库最好一样,并且不能超过8字符
DB_UNIQUE_NAME :每个数据的一个唯一的名字:
LOG_ARCHIVE_CONFIG :来自db_unique_name,在RAC集群运行在最大保护和最大可用模式时,动态添加备库。
CONTROL_FILES :
LOG_ARCHIVE_DEST_n
LOG_ARCHIVE_DEST_1:本地的归档日志存放地:in /arch1/chicago/.
LOG_ARCHIVE_DEST_2 :远程传输REDO数据的地址
LOG_ARCHIVE_DEST_STATE_n Specify ENABLE:允许重做日志传输到目的地
REMOTE_LOGIN_PASSWORDFILE Set the same password for SYS on both the primary and standby databases. The recommended setting is either EXCLUSIVE or SHARED.
LOG_ARCHIVE_FORMAT:
Specify the format for the archived redo log files using a thread (%t), sequence number (%s), and resetlogs ID (%r). See Section 5.7.1 for another example.
LOG_ARCHIVE_MAX_PROCESSES:
=integer Specify the maximum number (from 1 to 30) of archiver (ARCn) processes you want Oracle software to invoke initially. The default value is 4. See Section 5.3.1.2 for more information about ARCn processing.
FAL_SERVER:
Specify the Oracle Net service name of the FAL server (typically this is the database running in the primary role). When the Chicago database is running in the standby role, it uses the Boston database as the FAL server from which to fetch (request) missing archived redo log files if Boston is unable to automatically send the missing log files. See Section 5.8.
FAL_CLIENT
Specify the Oracle Net service name of the Chicago database. The FAL server (Boston) copies missing archived redo log files to the Chicago standby database. See Section 5.8.
DB_FILE_NAME_CONVERT:
Specify the path name and filename location of the primary database datafiles followed by the standby location. This parameter converts the path names of the primary database datafiles to the standby datafile path names. If the standby database is on the same system as the primary database or if the directory structure where the datafiles are located on the standby site is different from the primary site, then this parameter is required. Note that this parameter is used only to convert path names for physical standby databases. Multiple pairs of paths may be specified by this parameter.
LOG_FILE_NAME_CONVERT
Specify the location of the primary database online redo log files followed by the standby location. This parameter converts the path names of the primary database log files to the path names on the standby database. If the standby database is on the same system as the primary database or if the directory structure where the log files are located on the standby system is different from the primary system, then this parameter is required. Multiple pairs of paths may be specified by this parameter.
STANDBY_FILE_MANAGEMENT :
Set to AUTO so when datafiles are added to or dropped from the primary database, corresponding changes are made automatically to the standby database.
五、启用归档模式
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE OPEN;
创建主库的数据文件备份
创建备库的控制文件 alter database create standby controlfile as ”
准备备库的参数文件 create pfile=” from spfile;
设置物理备库的参数文件
DB_NAME=chicago
DB_UNIQUE_NAME=boston
LOG_ARCHIVE_CONFIG=’DG_CONFIG=(chicago,boston)’
CONTROL_FILES=’/arch1/boston/control1.ctl’, ‘/arch2/boston/control2.ctl’
DB_FILE_NAME_CONVERT=’chicago’,'boston’
LOG_FILE_NAME_CONVERT=
’/arch1/chicago/’,'/arch1/boston/’,'/arch2/chicago/’,'/arch2/boston/’
LOG_ARCHIVE_FORMAT=log%t_%s_%r.arc
LOG_ARCHIVE_DEST_1=
’LOCATION=/arch1/boston/
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=boston’
LOG_ARCHIVE_DEST_2=
’SERVICE=chicago LGWR ASYNC
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=chicago’
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
STANDBY_FILE_MANAGEMENT=AUTO
FAL_SERVER=chicago
FAL_CLIENT=boston
从主库复制文件到备库:包括数据文件备份 备库控制文件 参数文件
创建口令文件 监听文件和TNSNAME
启动备库:
startup pfile=” nomount
alter database mount standby database
alter database recover managed standby database disconnect from session
在主库切换日志测试
确认备库的模式
1 已经存在归档日志:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME
2 FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# FIRST_TIME NEXT_TIME
———- —————— ——————
8 11-JUL-02 17:50:45 11-JUL-02 17:50:53
9 11-JUL-02 17:50:53 11-JUL-02 17:50:58
10 11-JUL-02 17:50:58 11-JUL-02 17:51:03
2 在主库强制日志归档
alter system switch logfile;
3 确认备库归档日志:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME
2> FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# FIRST_TIME NEXT_TIME
———- —————— ——————
8 11-JUL-02 17:50:45 11-JUL-02 17:50:53
9 11-JUL-02 17:50:53 11-JUL-02 17:50:58
10 11-JUL-02 17:50:58 11-JUL-02 17:51:03
11 11-JUL-02 17:51:03 11-JUL-02 18:34:11
4 rows selected.
4确认归档日志被应用:
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG
2 ORDER BY SEQUENCE#;
SEQUENCE# APP
——— —
8 YES
9 YES
10 YES
11 YES
这个例子是最大性能模式:
再次模式你可以升级或降级保护模式
可以启用闪回数据库
待续逻辑备库创建
