<< Oracle高可用>>部分书面作业 - 第六课 Data Gaurd 概念和配置

本文详细介绍了如何配置物理数据守护(Data Guard),包括应用归档日志和在线redo方式的数据同步流程,以及如何根据需求调整守护模式以实现最大性能、最大可用性和最大保护。同时,展示了如何将数据守护从物理模式转换为逻辑模式,并提供了关键步骤的指导。

1.配置DG为物理standby,分别使用应用归档日志方式和应用在线redo方式进行数据同步。

配置oracle 10g物理DG的一般流程如下。

(11g流程可参照Note:Step by Step Guide on Creating Physical Standby Using RMAN DUPLICATE...FROM ACTIVE DATABASE [ID 1075908.1])


On both servers, configure TNSNAMES.ORA
LONDON =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = london1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = LONDON)
)
)
READING =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = reading1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = READING)
)
)


On primary server create backup location
mkdir /u01/oradata/PRIMARY/backup;

On primary server run RMAN to backup database
$ORACLE_HOME/bin/rman NOCATALOG TARGET sys/oracle@PRIMARY

In RMAN configure backup
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO
'/u01/oradata/PRIMARY/backup/%F';
CONFIGURE CHANNEL 1 DEVICE TYPE DISK CONNECT 'sys/oracle@PRIMARY';
CONFIGURE SNAPSHOT CONTROLFILE NAME TO
'/u01/app/oracle/admin/PRIMARY/backup/snapcf_PRIMARY.f';

In RMAN backup database
BACKUP
FORMAT '/u01/oradata/PRIMARY/backup/%d_D_%T_%u_s%s_p%p'
DATABASE;

 In RMAN create controlfile for standby database
BACKUP CURRENT CONTROLFILE FOR STANDBY
FORMAT '/u01/oradata/PRIMARY/backup/%d_C_%U';

In RMAN switch and archive current online redo log
SQL "ALTER SYSTEM ARCHIVE LOG CURRENT";

In RMAN backup archived redo logs
BACKUP
FILESPERSET 10
ARCHIVELOG ALL
FORMAT '/u01/oradata/PRIMARY/backup/%d_A_%T_%u_s%s_p%p';

On standby server create administrative directories
$ mkdir $ORACLE_BASE/admin/PRIMARY;
$ mkdir $ORACLE_BASE/admin/PRIMARY/adump;
$ mkdir $ORACLE_BASE/admin/PRIMARY/bdump;
$ mkdir $ORACLE_BASE/admin/PRIMARY/cdump;
$ mkdir $ORACLE_BASE/admin/PRIMARY/dpdump;
$ mkdir $ORACLE_BASE/admin/PRIMARY/pfile;
$ mkdir $ORACLE_BASE/admin/PRIMARY/udump;

On standby server create database location
$ mkdir /u01/oradata/PRIMARY

On standby server create archived redo log location
$ mkdir /u01/oradata/PRIMARY/arch

On standby server create backup location
$ mkdir /u01/oradata/PRIMARY/backup;

On standby server create password file
$ORACLE_HOME/bin/orapwd \
file=$ORACLE_HOME/dbs/orapwPRIMARY \
password=oracle \

Copy SPFILE from primary to standby
scp london1:$ORACLE_HOME/dbs/spfilePRIMARY.ora \
reading1:$ORACLE_HOME/dbs

On primary server set parameters
ALTER SYSTEM SET db_unique_name = LONDON
SCOPE = SPFILE;
ALTER SYSTEM SET log_archive_dest_1 =
'LOCATION=/u01/oradata/PRIMARY/arch'
SCOPE=SPFILE;
ALTER SYSTEM SET log_archive_dest_2 = 'SERVICE=READING
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=READING'
SCOPE=SPFILE;
ALTER SYSTEM SET fal_client = LONDON
SCOPE = SPFILE;
ALTER SYSTEM SET fal_server = READING
SCOPE = SPFILE;
ALTER SYSTEM SET standby_file_management = AUTO
SCOPE = SPFILE;

Restart the primary instance


On standby server configure LISTENER.ORA
SID_LIST_LISTENER_SERVER4 =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = PRIMARY)
)
)

Reload the listener
$ lsnrctl reload

Start the standby instance (NOMOUNT)
$ export ORACLE_SID=PRIMARY
$ sqlplus / as sysdba
SQL> startup nomount

On standby server set parameters
ALTER SYSTEM SET db_unique_name = READING
SCOPE = SPFILE;
ALTER SYSTEM SET log_archive_dest_1 =
'LOCATION=/u01/oradata/PRIMARY/arch'
SCOPE = SPFILE;
ALTER SYSTEM SET log_archive_dest_2 = 'SERVICE=LONDON
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=LONDON'

SCOPE=SPFILE;
ALTER SYSTEM SET fal_client = READING
SCOPE = SPFILE;
ALTER SYSTEM SET fal_server = LONDON
SCOPE = SPFILE;
ALTER SYSTEM SET standby_file_management = AUTO
SCOPE = SPFILE;

Restart the standby instance

On primary server run RMAN connecting to standby server as AUXILIARY
$ORACLE_HOME/bin/rman NOCATALOG TARGET / AUXILIARY
sys/oracle@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=reading1)
(PORT=1521))(CONNECT_DATA=(SID=PRIMARY)))"

Run the following command to clone the database backup on the standby
server
RMAN> DUPLICATE TARGET DATABASE FOR STANDBY DO RECOVER ;

On standby server restart the instance
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP NOMOUNT

Mount the standby database
SQL> ALTER DATABASE MOUNT STANDBY DATABASE;

Start managed recovery
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
DISCONNECT FROM SESSION;

On standby server cancel managed recovery
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;


采用archivelog还是online redo同步主要看log_archive_dest_n的配置,其他步骤都一样。

应用归档日志

LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO ARCH NOAFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'


应用在线redo

同步模式:

LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'

异步模式:

LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO ASYNC NOAFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'


以前做过的一个11g 物理DG配置流水:http://blog.youkuaiyun.com/t0nsha/article/details/7668699


2.配置DG为物理standby,且保护模式分别是最大性能,最大高可用和最大保护模式。

最大性能模式
LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO ASYNC NOAFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'
LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO ARCH NOAFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'
 alter database set standby database to maximize PERFORMANCE;

最大可用性模式
LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'
 alter database set standby database to maximize AVAILABILITY;

最大保护模式
设置方式:
1.创建standby redo logs
alter database add standby logfile group 5 ('/oracle/u02/ORA10GDG/STANDBYRD02.LOG') size 200M;
alter database add standby logfile group 5 ('/oracle/u02/ORA10GDG/STANDBYRD02.LOG') size 200M;
alter database add standby logfile group 6 ('/oracle/u02/ORA10GDG/STANDBYRD03.LOG') size 200M;
2.配置对应的日志传递相关属性参数
LOG_ARCHIVE_DEST_2='SERVICE=CHICAGO SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILE, PRIMARY_ROLE)
DB_UNIQUE_NAME=CHICAGO'
3.转换成最大保护模式
alter database set standby database to maximize PROTECTION;


3.配置DG为逻辑standby模式。

On standby server cancel managed recovery
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

On primary server modify the LOG_ARCHIVE_DEST_2 parameter
SQL> ALTER SYSTEM SET
log_archive_dest_2 = 'SERVICE=READING
VALID_FOR=(ONLINE_LOGFILES,STANDBY_ROLE)
DB_UNIQUE_NAME=READING'
SCOPE=SPFILE;

On primary server build the logical standby dictionary
SQL> EXECUTE LOGSTDBY.BUILD;


On standby server enable recovery and change the name of the standby
database
SQL> ALTER DATABASE RECOVER TO LOGICAL STANDBY standby;


On standby server restart the instance and reset the logs
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP
SQL> ALTER DATABASE OPEN RESETLOGS;


On standby server start SQL apply

SQL> ALTER DATABASE START LOGICAL STANDBY APPLY;


在版图设计中,Guard Ring(保护环)是一种用于衬底接触的结构,其主要作用是降低噪声、隔离电路模块、减小寄生电阻对电路性能的影响[^2]。通过将多个衬底接触孔围绕某个电路模块排列形成环状结构,可以有效提升衬底电位的均匀性,从而改善电路的稳定性性能。 ### Guard Ring的作用 1. **衬底电位稳定**:通过在P阱或N阱中形成多个衬底接触孔并围成环状结构,使得衬底电位更接近于电源(VCC)或地(GND),从而减小寄生电阻的影响[^2]。 2. **噪声抑制**:Guard Ring能够有效隔离不同模块之间的噪声耦合,提高电路的抗干扰能力。 3. **寄生效应降低**:由于Guard Ring的存在,可以有效减少寄生电容电阻对电路性能的影响,尤其是在模拟射频电路中尤为重要。 ### Guard Ring的实现方法 1. **命名与选择库**: - 在Technology Tool Box界面中选择Guard Ring功能,进入Install Guard Ring界面。 - 选择具有可编辑权限的Technology Library,并在Name字段中为Guard Ring命名,例如“Pring”[^1]。 2. **层的选择与配置**: - 在Layers设置中,Diffusion层通常选择Active层。 - 其他相关层的设置需根据具体工艺设计需求进行选择,可参照相关工艺设计规则(Design Rule)。 3. **Enclosure Subpath设置**: - 在Cadence Virtuoso等工具中,Guard Ring的几何构造需要遵循最小设计规则。例如,在构造n型保护环(ngr)时: - NIMP层应包围DIFF层至少0.18 μm; - NWELL层应包围DIFF层至少0.43 μm; - 金属层应超出接触孔(CONT)至少0.06 μm[^3]。 - Layer字段表示被操作层,Begin OffsetEnd Offset表示该层相对于参考层(如DIFF)的偏移量(正值表示超出,负值表示被包围); - Enclose字段表示被操作层被参考层包围的距离(正值表示被包围,负值表示超出)。 4. **添加与确认**: - 每次对一个层进行设置后,必须点击Add按钮以保存设置,否则设置不会被记录[^3]。 5. **版图验证**: - 在完成Guard Ring的绘制后,应进行DRC(Design Rule Check)验证,确保其符合工艺厂(foundry)提供的设计规则文档(通常位于/PDK/工艺名/doc路径下,文件名包含DR或TLR字样)[^4]。 ### 示例:Guard Ring的几何参数设置(基于IC617工艺) ```plaintext Layer: NIMP Begin Offset: 0.18 End Offset: 0.18 Enclose: 0.18 Layer: NWELL Begin Offset: 0.43 End Offset: 0.43 Enclose: 0.43 Layer: Metal1 Begin Offset: 0.06 End Offset: 0.06 Enclose: 0.06 ``` 上述参数应根据具体工艺要求进行调整,并确保符合Foundry提供的设计规则文档。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值