mysql有dataguard吗_DataGuard部署

mysql有dataguard吗_DataGuard部署SQL gt archivelogli 2 创建归档目录 mkidr oradata arch3 开启归档 SQL gt alterdatabas SQL gt alterdatabas SQL gt altersystems 4 修改主库属性 SQL gt alterdatabas SQL

SQL> archive log list;

2.创建归档目录

mkidr /oradata/arch

3.开启归档

SQL> alter databasemount;

SQL>alter databasearchivelog;

SQL>alter system switch logfile;

4.修改主库属性

SQL> alter databaseforce logging;

SQL>select FORCE_LOGGING from v$database;

5.在主库创建密码文件、参数文件、以及standby控制文件

SQL> create pfile=’/home/oracle/pfile.ora’ from spfile;

6.密码文件可以直接用现有的

ls $ORACLE_HOME/dbs/orapw*

7.创建standby控制文件

SQL> alter database create standby controlfile as ‘/home/oracle/controlstd.ctl’;

8.主库TNS配置

TEST=(DESCRIPTION=(ADDRESS= (PROTOCOL = TCP)(HOST = 10.63.230.10)(PORT = 1521))

(CONNECT_DATA=(SERVER=DEDICATED)

(SERVICE_NAME=TEST)

)

)

TESTBAK=(DESCRIPTION=(ADDRESS= (PROTOCOL = TCP)(HOST = 10.63.230.13)(PORT = 1521))

(CONNECT_DATA=(SERVER=DEDICATED)

(SERVICE_NAME=TESTBAK)

)

)

9.主库备份数据库

RMAN>run {

crosscheck backup ;

crosscheck archivelog all;

crosscheck backupset ;

delete noprompt obsolete device type disk;

delete noprompt expired backup device type disk;

backup as compressed backupset full database format’/oradata/rman/full_%d_%t_%s_%p’ plus archivelog format ‘/oradata/rman/arch_%d_%t_%s_%p.bkp’;

}

10.备份完毕后将rman备份文件,standby控制文件,密码文件,参数文件一起传到备库

参数文件和standby控制文件放在/home/oracle/目录下

密码文件放在 $ORACLE_HOME/dbs/目录下

注:如果目录属主不是 oracle.oinstall或者oracle.dba 需要修改目录权限,文件传完后,检查下文件的用户和组。

–备库

1.创建数据库目录,根据自己的参数文件中的参数目录而定

mkdir -p /u01/app/oracle/admin/test/adump

mkdir -p /oradata/rmanmkdir -p /oradata/arch

mkdir -p /oradata/test

2.使用参数文件开启数据库

SQL> startup nomount pfile=’/home/oracle/pfile.ora’;

3.导入standby控制文件

RMAN> restore controlfile from ‘/home/oracle/controlstd.ctl’;

4.恢复数据文件

SQL> alter database mount;

RMAN> catalog start with ‘/oradata/rman/’;

RMAN> restore database;

5.恢复归档文件

RMAN> recover database;

6.备库TNS配置

TEST=(DESCRIPTION=(ADDRESS= (PROTOCOL = TCP)(HOST = 10.63.230.10)(PORT = 1521))

(CONNECT_DATA=(SERVER=DEDICATED)

(SERVICE_NAME=TEST)

)

)

TESTBAK=(DESCRIPTION=(ADDRESS= (PROTOCOL = TCP)(HOST = 10.63.230.13)(PORT = 1521))

(CONNECT_DATA=(SERVER=DEDICATED)

(SERVICE_NAME=TESTBAK)

)

)

7.创建standby redo log

在使用最大保护模式或是最大可用模式的时候需要在standby数据库创建standby redo log,对于最大性能模式可以不用创建standby redo log

SQL> alter database addstandby logfilegroup 4 (‘/oradata/test/std_redo04a.log’) size 100m,group 5 (‘/oradata/test/std_redo05a.log’) size 100m,group 6 (‘/oradata/test/std_redo06a.log’) size 100m,group 7 (‘/oradata/test/std_redo07a.log’) size 100m;

SQL> alter database clear logfile group 1;

SQL> alter database clear logfile group 2;

SQL> alter database clear logfile group 3;

添加standby日志文件的规则:

standby日志最少应该比redo log 多一组。推荐的备重做日志数依赖于主数据库上的线程数。

(每线程日志文件最大数目 + 1 ) * 线程数

否则standby日志在应用时报如下信息:

RFS[1]: No standby redo logfiles created

RFS[1]: Archived Log: ‘/oradata/arch/1_30_.dbf’

在主库添加完standby logfile后,当主库切换为standby角色后会自动使用standby redo logfile,具体应用信息如下:

RFS[1]: Successfully opened standby log 4: ‘/oradata/test/std_redo04a.log’

修改主备库参数

主库primary

SQL> alter system set db_unique_name=’test’ scope=spfile;

SQL> alter system set fal_server=’testbak’ sid=’*’scope=both;

SQL> alter system set fal_client=’test’ sid=’*’ scope=both;

SQL> alter system set standby_file_management=auto sid=’*’ scope=both;

SQL> alter system set log_archive_config=’dg_config=(test,testbak)’ sid=’*’ scope=both;

SQL> alter system set log_archive_dest_2=’service=testbak lgwr async valid_for=(online_logfiles,primary_role) db_unique_name=testbak’ sid=’*’ scope=both;

SQL>alter system set log_archive_dest_state_2=enable;

备库standby

SQL> alter system set db_unique_name=’testbak’ scope=spfile;

SQL> alter system set fal_server=’test’ sid=’*’scope=both;

SQL> alter system set fal_client=’testbak’ sid=’*’ scope=both;

SQL> alter system set standby_file_management=auto sid=’*’ scope=both;

SQL> alter system set log_archive_config=’dg_config=(test,testbak)’ sid=’*’ scope=both;

SQL> alter system set log_archive_dest_2=’service=test lgwr async valid_for=(online_logfiles,primary_role) db_unique_name=test’ sid=’*’ scope=both;

SQL> alter system set log_archive_dest_state_2=enable;

开启DG(10g不open)

SQL> alter database open;

SQL> alter database recover managed standby database disconnect from session using currentlogfile;

SQL> select process,client_process,sequence#,status from v$managed_standby;

停用DG

SQL> alter database recover managed standby database cancel;

如果主库传不过来归档,可以通过在主库侧手工修改参数如下:

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=’DEFER’ SCOPE=MEMORY;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=’ENABLE’ SCOPE=MEMORY;

至此dg搭建完毕

查询dg延迟

SQL> col value fora20

SQL> col time_computedfora30

SQL> col namefora25

SQL>col unitfora30

SQL>col datum_timefora30

SQL>set line 400

SQL>select * from v$dataguard_stats;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233523.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Vue(3)webstorm代码格式规范设置与vue模板配置

    Vue(3)webstorm代码格式规范设置与vue模板配置编译器代码格式规范设置通常我们写代码时,代码缩进都是4个空格,但是在前端中,据全球投票统计,建议使用2个空格来进行代码缩进。首先我们打开webstorm中的设置,如果使用的是mac的同学直接使用c

    2022年7月31日
    97
  • phpstorm 2022.01.21激活【最新永久激活】[通俗易懂]

    (phpstorm 2022.01.21激活)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月30日
    303
  • mysql读写分离的意义_MySQL读写分离

    mysql读写分离的意义_MySQL读写分离如何实现mysql的读写分离?就是基于主从复制架构,简单来说,就搞一个主库,挂多个从库,然后我们就单单只是写主库,然后主库会自动把数据给同步到从库上去。MySQL主从复制原理的是啥?主库将变更写binlog日志,然后从库连接到主库之后,从库有一个IO线程,将主库的binlog日志拷贝到自己本地,写入一个中继日志中。接着从库中有一个SQL线程会从中继日志读取binlog,然后执行binlog日志中的…

    2022年6月13日
    25
  • 暴力激活成功教程密码 – C++ 递归方法实现

    暴力激活成功教程密码 – C++ 递归方法实现问题描述:   暴力激活成功教程密码   假设有一个4位字母密码,每位密码是a~e之间的小写字母   你能否编写一段代码,来暴力激活成功教程该密码?(可重复排序) #include<iostream>#include<string>usingstd::string;usingnamespacestd;voidBreakPassword(s…

    2022年8月22日
    5
  • java如何输入字符串?「建议收藏」

    java如何输入字符串?「建议收藏」关于java如何输入字符串的文章早已是非常多了,本文是对我个人过往学习java,理解及应用java字符串的一个总结。此文内容涉及java如何输入字符串等相关问题,希望对大家有所帮助。java如何输入字符串?首先,导入java.util.*包。然后,你需要新建一个读取标准输入(键盘)的扫描器对象。现在,你可以从键盘输入字符串了。以上这一行把键盘输入的一行字符串读取到变量s中。请看一个完整的简单示例:以上就是java如何输入字符串的详细内容。我整理了一些ja

    2022年7月16日
    8
  • python线性回归算法「建议收藏」

    python线性回归算法「建议收藏」1.线性回归算法2.在Python中实现线性回归那我们如何在Python中实现呢?利⽤Python强⼤的数据分析⼯具来处理数据。Numpy提供了数组功能,以及对数据进⾏快速处理的函数。Numpy还是很多⾼级扩展库的依赖,⽐如Pandas,Scikit_Learn等都依赖于它。Scikit_Learn扩展库,这是⼀个机器学习相关的库。它提供了完善的机器学习⼯具箱,包括数据预处理、分类、回归、预测等。2.1安装sklearn⼯具本⾸先进⼊到虚拟环境cd~/Desktop/env_s

    2022年8月21日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号