OracleDataguard操作手册20160912
(完整word版)OracleDataguard操作手册20160912

Oracale dataguard操作手册第一.dataguard的好处:它是在主节点与备用节点间通过日志同步来保证数据的同步,可以实现数据库的快速切换与灾难性恢复,提供了灾难保护并防止数据丢失。
Data Guard只是在软件上对数据库进行设置,并不需要额外购买任何组件。
用户能够在对主数据库影响很小的情况下,实现主备数据库的同步。
而主备机之间的数据差异只限于在线日志部分,因此可以被用作数据容灾解决方案。
第二.选用什么DG模式?DG有三种模式,最大保护(Maximum protection),最大性能(Maximum performance),最大可用性(Maximum availability),默认的就是最大性能模式。
再实际的应用种使用最大性能模式比较多。
三种保护模式:可以在V$DATABASE中查看到DataGuard的保护模式SELECT PROTECTION_MODE, PROTECTION_LEVEL FROMV$DATABASE;第三.物理standby还是逻辑standby?1,物理stand by直接从primary接受archived log,然后直接做恢复,效率较高,因为是使用最底层的块级别上的复制。
逻辑stand by是把primary接收过来的archived log解析为sql语句,然后做同步,效率较低,因为是执行SQL语句。
2,Physical standby的APPLY节点为MOUNT状态,Logical standby节点为OPEN状态,可分担primary上部分的查询和报表服务。
3,Physical standby可以实现与Primary来回switchover;logical standby切为Primary ,不能再切回来。
4,Physical standby可以切换为Logical standby ,但是logical 不能转换为Physical。
综合以上采取:物理standby模式,效率高,数据完整性好。
Oracle_Data_Guard配置步骤

Oracle Data Guard配置步骤一:测试环境主数据库:windows English XP;版本ora9i(9.2.0.1.0);IP地址192.168.1.38;主机名:CISCOSYS;实例SID:PRIMARY备用数据库:windows English XP;版本ora9i(9.2.0.1.0);IP地址192.168.1.111;主机名:CISCOROUTER;实例SID:STANDBY二:运行Data Guard的条件1、在主数据库和备用数据库的所有机器上必须安装同一个版本的Oracle企业版。
:SELECT * FROM V$VERSION;2、主数据库必须运行在归档模式下,推荐主和备用数据库都是force Logging模式,这样方便双向自由切换:ALTER DATABASE FORCE LOGGING;3、主数据库和备用数据库的操作系统必须一样(允许版本不同),备用数据库可以使用与主数据库不同的目录结构,ORACLE推荐使用相同的目录结构。
4、主备用数据库硬件系统的体系结构必须相同,但允许主备数据库硬件的配置可以不同如:CPU数量、内存大小、存储配置等。
5、主备数据库可以是单实例的数据库,也可以是多实例的RAC数据库。
6、每个主备数据库必须有它自己的控制文件,ORACLE NET不同,必须分别修改。
三:运行Data Guard的具体步骤1、主数据库和备用数据库的Oracle安装的时候都选择相同的安装路径D:\oracle\ora92;并且先不要安装数据库,即在安装过程中“数据库配置”一项下面选择“只安装软件”;2、在主数据库上使用DBCA命令建一个数据库,SID设为PRIMARY;3、设置主数据库归档路径为D:\oracle\ora92\database\Archive:SQL>alter system setlog_archive_dest_1='LOCATION=d:\oracle\ora92\database\Archive MANDATORY' scope=both;4、将主数据库实例、数据库关闭,然后启动实例,但不打开数据库,只启动到数据库挂载模式: SQL>shutdown immediate; SQL>startup mount;5、将主数据库设置成归档状态和自动归档模式:SQL>alter database archivelog; SQL>alter system set log_archive_start=true scope=spfile;6、在主数据库上面创建备用数据库的控制文件standby.ctl:SQL>alter database create standby controlfile as 'd:\oracle\oradata\standby.ctl';7、在主数据库上面创建备用数据库的初始化参数文件standby.ora(将其拷贝回备用数据库后转换成备用数据库的spfile):SQL>createpfile='e:\oracle\oradata\standby.ora' from spfile;8、查看主数据库的数据文件及其的位置:SQL>select name from v$datafile;记下查询结果中的数据文件的位置。
DataGuard配置说明

DataGuard配置说明Oracle Data Guard配置同一操作系统平台的单机普通存储数据库的Data Guard配置操作系统:Windows 2003 Server主数据库名称:dgmain备数据库名称:dgstand1.启动主数据库的强制日志记录功能,避免Nologging子句的影响ALTER DATABASE FORCE LOGGING;2.配置日志传递的安全认证一般情况,设定remote_login_passwordfile=exclusive,并且配置tnsnames.ora即可3.配置主数据库的初始化参数#主库作为主数据库的配置:DB_NAME=dgmain#主备数据库必须相同DB_UNIQUE_NAME=DGMAIN#主备数据库不能相同LOG_ARCHIVE_CONFIG='DG_CONFIG=(DGMAIN,DGSTAND) ''#DataGuard专用配置,主备数据库相同control_files='E:\Oracle\oradata\DGMAIN\control01.ctl','E:\ Oracle\oradata\DGMAIN\control02.ctl','E:\Oracle\oradata\DGMAIN \contro l03.ctl'#控制文件LOG_ARCHIVE_DEST_1='LOCATION=E:\Oracle\oradata\DG MAIN\ARCH\ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=DGMAIN'#主数据库归档地址LOG_ARCHIVE_DEST_2='SERVICE=DGSTAND ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)DB_UNIQUE_NAME=DGSTAND'#备用数据库归档地址,由该配置指定向备用数据库写归档日志LOG_ARCHIVE_DEST_STATE_1=ENABLELOG_ARCHIVE_DEST_STATE_2=ENABLELOG_ARCHIVE_FORMAT=%t_%s_%r.arc 归档日志文件名格式LOG_ARCHIVE_MAX_PROCESSES=30#默认是4,可以不修改#主库作为备用数据库的配置:FAL_SERVER=DGSTANDFAL_CLIENT=DGMAINDB_FILE_NAME_CONVERT='DGSTAND','DGMAIN'LOG_FILE_NAME_CONVERT='DGSTAND','DGMAIN'STANDBY_FILE_MANAGEMENT=AUTO4.启动数据库归档模式SHUTDOWN IMMEDIATE;STARTUP MOUNT;ALTER DATABASE ARCHIVELOG;ALTER DATABASE OPEN;5.在主库创建备用重做日志。
dataguard配置文档_分析

Oracle Dataguard一、新建STANDBY数据库1、在开始运行-REGEDIT-打开注册表,定位至新建字符串值(大写)ORACLE_SID(数值数据为主库的名称)2、开始-运行-cmd输入oradim -new -sid (数据库名称)完成实例的建设。
二、配置监听与网络服务分别在主库和备用库上配置监听和网络服务名(可用oracle net configuration assistant配置工具)两个节点的配置相同一个网络服务名指向主库,另一个指向备用库1、监听程序配置(主库与STANDBY库配置一样)完成监听程序的配置2、配置本地NET服务名配置。
服务名输入为数据库名。
主机名输入为主库的IP地址网络服务名为主库名称。
继续配置STANDBY的NET服务名这里改为STANDBY的IP地址网络服务名改为(oraclestandby)这里改变名称时需要到主库更改选项。
完成网络服务名配置和监听配置。
以上步骤需主库与STANDBY库同时设置。
服务名都为实例名。
三、配置主库server1、ALTER DATABASE FORCE LOGGING;使其使用强制记录方式2、改初始化文件(加上以下一行):检查是否为pfile或者spfile文件:select value from v$parameter where name = 'spfile'; *.log_archive_dest_2='SERVICE=ORCLSTANDBY'注:可用以下命令:alter system set log_archive_dest_2='service=STANDBY名' scope=spfile;alter system set log_archive_dest_2='service=STANDBY名' scope=both;(当初始化文件是spfile,用这条参数可以不用重启数据库)图中DEST_4因测试环境不同,做法按默认命令为准。
Dataguard配置手册

DATAGUARD配置手册一、DATAGUARD体系架构图二、配置步骤1.首先在节点1用dbca创建实例,节点2不安装实例,只装数据库软件即可,如果节点1是现成运行的数据库,则不需要新建;2.把主节点1的TNSNAMES.ORA配置成如下,并把该文件复制到备节点2的相同目录下:ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))ORCLBAK =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orclbak)))注:这里要注意红色部分,要根据自己的情况对IP和服务名进行调整;3.配置两个节点的监听:listener.ora设置如下(用现成的监听文件即可,无需修改):主节点1设置:LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = shck70data279)(PORT = 1521))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))))红色部分位节点1的主机名,确认好配置后把这个监听文件拷贝到节点2相同的目录下,并调整:备节点2设置:LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = shck70data280)(PORT = 1521)))(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))))注:这里将红色的主机名改为节点2的主机名4.主节点设置强制写日志SQL> select FORCE_LOGGING from v$database;NOSQL> alter database force logging;SQL> select FORCE_LOGGING from v$database;YES5.把主节点的密码文件拷到备节点相同的目录下(名字要一样,别改名,本例是pwdorcl.ora文件):6.主节点创建PFILE并增加修改如下:SQL>create pfile from spfle;找到initorcl.ora文件:orcl.__db_cache_size=5251268608orcl.__java_pool_size=16777216orcl.__large_pool_size=16777216orcl.__oracle_base='E:\u01'#ORACLE_BASE set from environmentorcl.__pga_aggregate_target=2147483648orcl.__sga_target=6408896512orcl.__shared_io_pool_size=0orcl.__shared_pool_size=1056964608orcl.__streams_pool_size=16777216*.audit_file_dest='E:\u01\admin\orcl\adump'*.audit_trail='db'* patible='11.2.0.0.0'*.control_files='E:\u01\oradata\orcl\control01.ctl','E:\u01\fast_recovery_area\orcl\control02.ctl'*.db_block_size=8192*.db_domain=''*.db_name='orcl'*.db_recovery_file_dest='E:\u01\fast_recovery_area'*.db_recovery_file_dest_size=52428800000*.diagnostic_dest='E:\u01'*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'*.log_archive_format='ARC%S_%R.%T'*.nls_language='SIMPLIFIED CHINESE'*.nls_territory='CHINA'*.open_cursors=300*.pga_aggregate_target=2131755008*.processes=1500*.remote_login_passwordfile='EXCLUSIVE'*.sessions=1655*.sga_target=6396313600*.undo_tablespace='UNDOTBS1'--下面为增加的内容:DB_UNIQUE_NAME=orclLOG_ARCHIVE_CONFIG='DG_CONFIG=(orcl,orclbak)'LOG_ARCHIVE_DEST_1= 'LOCATION=E:\u01\fast_recovery_area\orcl VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl'LOG_ARCHIVE_DEST_2= 'SERVICE=orclbak LGWR ASYNC affirm VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orclbak'LOG_ARCHIVE_DEST_STATE_1=ENABLELOG_ARCHIVE_DEST_STATE_2=ENABLELOG_ARCHIVE_FORMAT=%t_%s_%r.arcFAL_SERVER=orclbakFAL_CLIENT=orclSTANDBY_FILE_MANAGEMENT=AUTO7.在备端创建几个跟主端同样的目录:E:\u01\oradata\orcl,E:\u01\fast_recovery_area\orcl,E:\u01\admin\orcl\adump,E:\u01\admin\orcl\bdump,E:\u01\admin\orcl\pfile然后创建STANDBY控制文件并拷贝至备端的相同目录SQL>ALTER DATABASE CREATE STANDBY CONTROLFILE AS 'e:\control01.ctl';然后把E:\control01.ctl复制到备端的E:\u01\oradata\orcl下8.根据6的参数文件内容,拷贝到到备端,并增加修改内容如下(记住pfile文件名要一样,也是叫initorcl.ora,路径是:E:\u01\product\11.2.0\dbhome_1\database\initorcl.ora):备库的参数文件如下:orcl.__db_cache_size=5251268608orcl.__java_pool_size=16777216orcl.__large_pool_size=16777216orcl.__oracle_base='E:\u01'#ORACLE_BASE set from environmentorcl.__pga_aggregate_target=2147483648orcl.__sga_target=6408896512orcl.__shared_io_pool_size=0orcl.__shared_pool_size=1056964608orcl.__streams_pool_size=16777216*.audit_file_dest='E:\u01\admin\orcl\adump'*.audit_trail='db'* patible='11.2.0.0.0'*.control_files='E:\u01\oradata\orcl\control01.ctl'--这里不同于主端,注意只指定一个控制文件即可*.db_block_size=8192*.db_domain=''*.db_name='orcl'*.db_recovery_file_dest='E:\u01\fast_recovery_area'*.db_recovery_file_dest_size=524288000000*.diagnostic_dest='E:\u01'*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'*.log_archive_format='ARC%S_%R.%T'*.nls_language='SIMPLIFIED CHINESE'*.nls_territory='CHINA'*.open_cursors=300*.pga_aggregate_target=2131755008*.processes=1500*.remote_login_passwordfile='EXCLUSIVE'*.sessions=1655*.sga_target=6396313600*.undo_tablespace='UNDOTBS1'--调整以下内容:DB_UNIQUE_NAME=orclbakLOG_ARCHIVE_CONFIG='DG_CONFIG=(orcl,orclbak)'LOG_ARCHIVE_DEST_1= 'LOCATION=E:\u01\fast_recovery_area\orcl VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orclbak'LOG_ARCHIVE_DEST_2= 'SERVICE=orcl LGWR ASYNC affirm VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl'LOG_ARCHIVE_DEST_STATE_1=ENABLELOG_ARCHIVE_DEST_STATE_2=ENABLELOG_ARCHIVE_FORMAT=%t_%s_%r.arcFAL_SERVER=orclFAL_CLIENT=orclbakSTANDBY_FILE_MANAGEMENT=AUTO9.关闭主端数据库并把数据文件拷贝至备端的相同目录下:SQL>shutdown immediate然后把主端的E:\u01\oradata\orcl目录复制到备端同样的目录下,这里千万要注意,控制文件千万别复制过去,因为步骤7已将standby 控制文件复制过去;10.在主,备端同时建立standby重做日志:主端此时OPEN数据库,然后创建以下日志,SQL>statupSQL>ALTER DATABASE ADD STANDBY LOGFILE group 4('E:\u01\oradata\standby_log\slog1.rdo') SIZE 200M;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 5('E:\u01\oradata\standby_log\slog2.rdo') SIZE 200M;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 6('E:\u01\oradata\standby_log\slog3.rdo') SIZE 200M;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 7('E:\u01\oradata\standby_log\slog4.rdo') SIZE 200M;备端先mount起来再创建:SQL>starup nomountSQL>alter database mount;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 4('E:\u01\oradata\standby_log\slog1.rdo') SIZE 200M;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 5('E:\u01\oradata\standby_log\slog2.rdo') SIZE 200M;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 6('E:\u01\oradata\standby_log\slog3.rdo') SIZE 200M;SQL>ALTER DATABASE ADD STANDBY LOGFILE group 7('E:\u01\oradata\standby_log\slog4.rdo') SIZE 200M;11.备端进行同步操作SQL>shutdown immediate;SQL>startup nomount;SQL>alter database mount standby database;SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;此时先用步骤12,13查看DG是否同步正常,如正常(这里判断的方法是:用步骤13语句在主端看是否有LNS字样的同步日志出现,如出现ERROR则需要诊断不同步的原因,另外用步骤12在备端查看归档日志是否处于YES的应用状态),可进行下列操作切换到OPEN状态下同步:要切换到OPEN READ ONLY状态下的操作:SQL>alter database recover managed standby database cancel;SQL>alter database open read only;其实在open read only状态下也可以进行日志同步:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;这样就可以既可以实时查数据,也可以同步数据--到此配置完毕,以下为内容为维护DATAGUARD使用:12.查看备库日志应用状态:SQL>SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,applied FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;.13.查看主库日志归档情况:SQL>set lines 180SQL>col message format a70SQL>select * from V$DATAGUARD_STATUS;14.查看数据库主备状态:SQL>SELECT SWITCHOVER_STATUS FROM V$DATABASE;15.查看备库standby_log状态:SQL>select thread#,sequence#,used,archived,status from v$standby_log;16.查看归档文件是否连续SQL> select thread#,low_sequence#,high_sequence# from v$archive_gap;。
OracleDataGuard日常管理常用操作

OracleDataGuard⽇常管理常⽤操作1、check dataguard sync statusselect process,status,group#,sequence# from v$managed_standbyselect * from v$archived_log order by thread#, sequence#;select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS'),a.dt,a.sequence#,b.dt,b.sequence# from(select sequence#,to_char(completion_time,'YYYY/MM/DD HH24:MI:SS') dt from v$archived_logwhere sequence# = (select max(sequence#) from v$archived_log where dest_id=1)and dest_id=1) a,(select sequence#,to_char(completion_time,'YYYY/MM/DD HH24:MI:SS') dt from v$archived_logwhere sequence# = (select max(sequence#) from v$archived_log where applied='YES' and dest_id=2) and dest_id=2) b;2、dataguard failover--standby databasealter database recover managed standby database finish;alter database commit to switchover to primary;shutdown immediate3、dataguard switchover--primary databasealter database commit to switchover to physical standby with session shutdownshutdown immediatestartup--standby databasealter database commit to switchover to primary with session shutdown;alter database open4、dataguard real-time apply--standby databasealter database recover managed standby database using current logfile disconnect from session5、dataguard delay-time apply--standby databasealter database recover managed standby database delay 240 disconnect from session6、dataguard archive log apply--standby databasealter database recover managed standby database disconnect from session7、dataguard cancel apply--standby databasealter database recover managed standby database cancel8、physical standby database convert to snapshot standby databasestartup mount ;alter database convert to snapshot standby; --创建保证的还原点,不需要启⽤闪回数据库功能,数据块第⼀次修改时前镜像写⼊闪回⽇志alter database open ;9、snapshot standby database convert to physical standby databasestartup mount ;alter database convert to physical standby;10、repair physical standby database--missing archived logRefreshing a Standby Database With INCREMENTAL FROM SCN BackupsStep 1: Create the Incremental BackupCreate the needed incremental backup at the source database, using BACKUP with the INCREMENTAL FROM SCN clause.select current_scn from v$databaseAssume that the incremental backup to be used in updating the duplicate database is to be created on disk, with the filenames for backup pieces determined by the format /tmp/incr_for_standby/bkup_%U.RMAN> BACKUP DEVICE TYPE DISK INCREMENTAL FROM SCN 750983 DATABASEFORMAT '/tmp/incr_for_standby/bkup_%U';Step 2: Make the Incremental Backup Accessible at the Standby DatabaseMake the backup pieces containing the incremental backup available in some directory accessible on the system containing the standby database. For this example, assume that the destination directory is called /standbydisk1/incrback/ and ensure that it contains nothing besides the incremental backups from Step 1.Step 3: Catalog the Incremental Backup Files at the Standby DatabaseUse the RMAN CATALOG command to register the backup sets in the RMAN repository at the duplicate. With an RMAN client connected to the standby database and the recovery catalog (if you use one at the standby), mount the standby and run the following command: RMAN> CATALOG START WITH '/standbydisk1/incrback/';The backups are now available for use in recovery of the standby.Step 4: Apply the Incremental Backup to the Standby DatabaseUse the RMAN RECOVER command with the NOREDO option to apply the incremental backup to the standby database. All changed blocks captured in the incremental backup are updated at the standby database, bringing it up to date with the primary database. With an RMAN client connected to the standby database, run the following command:RMAN> RECOVER DATABASE NOREDO;You can now resume managed recovery at the standby. Any redo logs required at the standby with changes since those contained in the incremental are automatically requested from the primary and applied--create data file failedalter system set standby_file_management='manual';column name format a50 ;column bytes format 9999999999999999 ;set linesize 200;select file#,name,bytes from v$datafile ;alter database create datafile '/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/UNNAMED00011' as '+DATA' size 1024M ;alter system set standby_file_management='auto';alter database recover managed standby database disconnect from session ;--after primary database open resetlogs(10g以及以上版本,9i以及之前版本必须重建standby)1.on primary database,query to obtain the value of the system change number (SCN) that is 2 SCNs before the RESETLOGS operationoccurred on the primary databaseSELECT TO_CHAR(RESETLOGS_CHANGE# - 2) FROM V$DATABASE;2.query the current SCN on the standby databaseSELECT TO_CHAR(CURRENT_SCN) FROM V$DATABASE;3.Determine if it is necessary to flash back the database.a.If the value of CURRENT_SCN is larger than the value of resetlogs_change# - 2, issue the following statement to flash back the standby database.FLASHBACK STANDBY DATABASE TO SCN resetlogs_change# -2;b.If the value of CURRENT_SCN is less than the value of the resetlogs_change# - 2,to start Redo Apply on the physical standby database, issue the following statement:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;c.If the standby database's SCN is far enough behind the primary database's SCN,and the new branch of redo from the OPEN RESETLOGS statement has been registered at the standby,apply services will be able to continue through the OPEN RESETLOGS statement without stopping.In this case, flashing back the database is unnecessary because apply services do not stop upon reaching the OPEN RESETLOGS statement in the redo data.。
ORACLE 数据库备份软件Dataguard 监控和维护文档
ORACLE 数据库备份软件Dataguard监控和维护文档一、运行状态监控① 查看后台logtail -f $ORACLE_BASE/admin/spring/bdump/alert_spring.log主机正常状态显示:A:下一次提交的日志序列号为7410B:日志7410不能写入,原因是7409还没有完成。
(这个属正常提示,多核CPU导致,7409 完成后,即显示A)备机正常状态显示:A:接收到主机序号为7409的日志。
B:成功写入7409 号日志。
C:等待7410 号日志。
二、主机正常状态下主备机角色切换(此操作没有太大实际意义,主机正常,没有必要切换,切换需要重新配置参数,包括中间件服务器)(谨记:无论哪台做主机,其服务名必为spring,否则前台应用会出错)主机操作:(必须先操作主机,再操作备机)①切换成备机状态sqlplus / as sysdbaalter database commit to switchover to physical standby with session shutdown;shutdown immediate;②修改启动参数(如果没有,需要增加)$ORACLE_HOME/dbs/initspring.ora*.fal_client='springsty' (本机服务名)*.fal_server='spring' (对方服务名)*.log_archive_dest_1='LOCATION=/data/oracle/oradata/spring/arch' (本地日志存放位置)*.log_archive_format='%t_%s_%r.dbf' (日志格式)*.standby_archive_dest='/data/oracle/oradata/spring/archive/' (本机接收primary传过来的日志存放位置)*.standby_file_management='AUTO' (自动管理standby 日志)*.service_names=springsty (本机服务名, 切换成备机要用springsty)*.local_listener='(ADDRESS_LIST=(Address=(Protocol=TCP)(Host=138.136.10.30)(Port=1521) )(Address=(Protocol=IPC)(Key=springsty)))' (本地监听,注意host 和key)③修改tns --- - $ORACLE_HOME/network/admin/tnsnames.ora注意spring与springsty的ip地址,应该对调一下。
oracle数据库安全加固操作手册
1.支持按用户分配账号。
结果:现网已实现2.与设备运行、维护等工作无关的账号,应能够删除或锁定。
结果:现网已实现3.应按照用户分配账号。
避免不同用户间共享账号。
避免用户账号和设备间通信使用的账号共享。
结果:现网已实现4.应删除或锁定与设备运行、维护等工作无关的账号。
结果:现网已实现5.限制具备数据库超级管理员(SYSDBA)权限的用户远程登录。
结果:可以实现,但是需要需要重起数据库,影响业务,不建议实现,而且通过防火墙限制访问数据库的端口方式已经实现。
6.对于采用静态口令认证技术的设备,应支持数字、小写字母、大写字母和特殊符号4类字符构成的口令。
应支持配置口令复杂度。
在配置了复杂度后,设备自动拒绝用户设置不符合复杂度要求的口令结果:部分账号已实现(system和CS车务通),其他账号实施时需要重新配置现网的应用配置,影响业务,不建议实现。
7.对于采用静态口令认证技术的设备,应支持配置用户连续认证失败次数上限。
当用户连续认证失败次数超过上限时,设备自动锁定该用户账号。
必须由其他账号,通常为具有管理员权限的账号,才可以解除该账号锁定结果:现网已实现(系统默认是10次)8.对于采用静态口令认证技术的设备,应支持按天配置口令生存期功能。
在配置了口令生存期后,设备在口令超过生存期的用户登录时,应提示并强迫该用户设置新口令结果:可以实现,但是应用账号不建议实现,将会影响应用系统;编号:安全要求-设备-ORACLE-配置-10-可选9.对于采用静态口令认证技术的设备,应支持配置用户不得重复使用其最近已用口令的功能。
当配置相应功能后,设备拒绝用户重复使用在限制次数内的口令结果:可以实现,但是应用账号不建议实现,将会影响应用系统;见问题8的实现10.对于采用静态口令认证技术的设备,应配置当用户连续认证失败次数超过6次(不含6次),锁定该用户使用的账号结果:现网已实现(系统默认是10次)11.对于存在关系型数据库的设备,设备应支持对数据库表,给不同数据库用户或用户组分别授予读取、修改的权限。
Oracle 11g DataGuard 配置详细说明
Oracle 11g DataGuard 配置详细说明1.判断DataGuard是否安装select * from v$option where parameter = 'Oracle Data Guard';2. 数据库环境说明主库配置:IP:192.168.228.133(Oracle11g1),数据库名:db1,监听服务名:db1pri,网络服务名:pri从库配置:IP:192.168.229.134(Oracle11g2),数据库名:db1,监听服务名:db1dg ,网络服务名:dg数据库程序安装路径:/oracleapp/oinstall/oracle/product/11.2.0/dbhome_1/dbs数据库存放路径:/oracledata/db13.监听配置在做oracle dataguard主从库配置时候,一定要配置静态监听,否则可能出现监听服务解析错误,不能连接的问题,监听配置如下:主库配置如下:[oracle@Oracle11g1 admin]$ pwd/oracleapp/oinstall/oracle/product/11.2.0/dbhome_1/network/admin[oracle@Oracle11g1 admin]$ cat listener.ora# listener.ora Network Configuration File:/oracleapp/oinstall/oracle/product/1.2.0/dbhome_1/network/admin/listener.ora# Generated by Oracle configuration tools.WU =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = Oracle11g2)(PORT = 1521))))SID_LIST_WU =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME =db1pri)(ORACLE_HOME = /oracleapp/oinstall/oracle/product/11.2.0/dbhome_1)(SID_NAME = db1)))ADR_BASE_WU = /oracleapp/oinstall/oracle#注意这里的global_dbname=db1pri,SID_NAME=db1,这个SID_NAME 应与你对外提供服务的 $ORACLE_SID 一致,即数据库:db1[oracle@Oracle11g1 admin]$ cat tnsnames.ora# tnsnames.ora Network Configuration File:/oracleapp/oinstall/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora # Generated by Oracle configuration tools.pri =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = Oracle11g1)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = db1pri)))dg =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = Oracle11g2)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = db1dg)))#tnsname pri中的 SERVICE_NAME=db1pri ,这里的服务名为db1pri而不是通常的 db1,因为在 listener.ora 中已经注册了db1pri,lsnrctl 启动时会监听db1pri ,并对应到SID_NAME=db1上。
(完整版)oracle11g dataguard 完全手册
oracle11g dataguard 完全手册一、前言:网络上关于dataguard的配置文章很多,但是很多打着oracle11g的文章实际都是只能在9 10 上运行,比如FAL_CLIENT在11g中已经废弃,但是现在网络上的文章都是没有标注这一点。
而且对于具体含义语焉不详对于新手只能知其然而不知其所以然。
这篇文章我就想让像我这样的人对于dataguard配置不仅仅知道怎么配置,还要知道为什么需要这样配置,这样的效果才是最好的。
这篇文章不仅仅是记录如何配置,还介绍了为什么是这样,以及注意要点,我希望这个文章可以作为进行dataguard配置的一个参考手册。
二、前提1.主库是归档模式:如果我们不清楚为什么是归档模式,那我们就应该也不会清楚dataguard是用来做什么的。
透过很多修饰的官方语言,我们需要明确DG(dataguard简称,后同)实际上的作用就是用来高可用。
而实现原理就是从主库获取数据到从库,在主库发生异常的时候,从库接管主库,完成身份的变化。
可以一个主库,最多9个从库。
同时分为逻辑standby和物理standby这里我们讨论的是物理standby.一旦创建并配置成standby 后,dg 负责传输primary数据库redo data 到standby 数据库,standby 数据库通过应用接收到的redo data 保持与primary 数据库的事务一致。
这下清楚了吧,需要保证主从库一致,需要传输archive log和redo log到从库,如果不是归档模式无法保证主从库的数据一致。
2.从库只需要安装数据库软件,数据从主库传输后完成。
3.很多人说11g有了active dataguard(ADG),逻辑standby 实际上已经没什么用处了。
4.主从库硬件最好一致。
oracle数据库版本需要一致。
(1)内存检查项:# grep MemTotal /proc/meminfo交换分区检查项:如果内存在1-2G,swap是1.5倍;2-16G,1倍;超过16G,设置为16G即可。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
b e
i n g
a r
e Oracale dataguard 操作手册
第一.dataguard 的好处:
第二.选用什么DG 模式?
DG 有三种模式,最大保护(Maximum protection), 最大性能(Maximum
performance),最大可用性(Maximum availability),默认的就是最大性能模式。
再实际的应用种使用最大性能模式比较多。
三种保护模式:
可以在V$DATABASE 中查看到DataGuard 的保护模式SELECT PROTECTION_MODE, PROTECTION_LEVEL FROM
V$DATABASE;
n g
a r
e g
o o
d f
o 第三.物理standby 还是逻辑standby ?
1,物理stand by 直接从primary 接受archived log,然后直接做恢复,效率较高,因为是使用最底层的块级别上的复制。
逻辑stand by 是把primary 接收过来的archived log 解析为sql 语句,然后做同步,效率较低,因为是执行SQL 语句。
2,Physical standby 的APPLY 节点为MOUNT 状态,Logical standby 节点为OPEN 状态,可分担primary 上部分的查询和报表服务。
3,Physical standby 可以实现与Primary 来回switchover ;logical standby 切为Primary ,不能再切回来。
4,Physical standby 可以切换为Logical standby ,但是logical 不能转换为Physical 。
综合以上 采取:物理standby 模式,效率高,数据完整性好。
第四.如何创建物理standby ?
见附件一:ORACLE 11G 搭建DATAGUARD 步骤大概步骤如下:
首先:配置主库
1.1设置数据库强制归档1.2添加STANDBY 日志文件1.3修改参数文件1.4修改监听配置文件1.5修改TNS 配置文件1.6重启监听服务
1.7启动数据库,配置DG 模式:最大可用性模式或者最大性能模式1.8
备份数据库
其次:配置备库。
2.1建立相应的文件目录
2.2从主数据库服务器上拷贝文件
2.3拷贝闪回区内容,参数文件以及监听文件,
2.4修改监听配置文件
2.5重启监听服务
2.6恢复数据库
2.7修改参数文件
2.8启动数据库
附件一:
ORACLE 11G
搭建DATAGUARD步骤.docx
第五.Dataguard状态的监控以及常见问题的处理?
见附件二:dataguard日常维护
附件二:
dataguard日常维护
.docx
第六.主备库切换,Swith over切换测试和Failover切换测试
切换是在主数据库与其备数据库之间进行角色反转,切换确保不丢失数据。
这是对于主系统计划维护的典型操作。
在切换期间,主数据库转换到备角色,备数据库转换到主角色。
转换发生不需要重建任何数据库。
主备库的切换主要在两种情况下切换,Switchover和Failover,这两种切换都需要手工执行完成。
(1)Switchover
用到的场景:计划中的角色转换或用户操作系统和硬件的维护等。
Switchover不会导致DG 环境破坏。
(2)Failover
故障转移是当主数据库不可用时执行的。
故障转移只有在主数据库灾难故障的情况下执行,并且故障转移导致备数据库转换到主角色。
用到的场景:非计划中的角色切换,一般在紧急情况下使用。
根据保护模式的不同,可能会没有或者很少的数据损失。
Failover会导致DG环境破坏需要重新搭建。
见附件三:Dataguard Switch Over
Dataguard Switch
Over.docx
见附件四:
物理dg的failover
切换.docx
第七:常见问题的处理。
见附件五:常见问题的处理
常见问题的处理.do
cx。