热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle数据库11g版本dataguard创建的简单方法

Oracle数据库11g对DataGuard功能进行了多方面的增强,难以详尽说明。因此,在这里我将介绍一些我最感兴趣的功能增强。备用

Oracle 数据库 11g 对 Data Guard 功能进行了多方面的增强,难以详尽说明。因此,在这里我将介绍一些我最感兴趣的功能增强。 备用

了解 Active Data Guard 如何通过实时查询,同时应用归档的的日志、将物理备用数据库转换为快照备用数据库以及对基础架构的一系列改进措施,让您对备份环境的投资物有所值。

下载 Oracle 数据库 11g

Oracle 数据库 11g 对 Data Guard 功能进行了多方面的增强,难以详尽说明。因此,在这里我将介绍一些我最感兴趣的功能增强。

备用数据库创建更加简单
首先,我们从创建物理备用数据库开始。在 Oracle 数据库 11g 中,物理备用数据库的创建已经变得极为简单,一条 RMAN 命令就可完成整个过程。以前您可能需要使用 Grid Control 向导界面在两台计算机之间完成 Data Guard 设置。在撰写本文时,Oracle 企业管理器网格控制 11g 还未推出,且 Database Control 没有 Data Guard 向导。但不管您是否使用过 SQL 命令,在 Oracle 数据库 11g 中设置 Data Guard 都是非常轻松的。过程如此简单,因此我将在此处介绍所有步骤。

假设您的主数据库名称为 prolin11,运行于 prolin1 服务器上。您想在 prolin2 服务器上设置一个备用数据库。备用数据库实例的名称应当为 pro11sb。以下为设置步骤:

在 prolin1 上,首先创建 spfile(如果您没有)。
SQL> create spfile from pfile;
这一步不是绝对必要的,但它可以简化这一过程。创建数据库后,重新启动 prolin11 数据库以使用 spfile。

尽管没有必要创建备用重做日志,这还是一个很好的做法。备用重做日志可使主数据库中发生的更改几乎实时地反应在备用数据库中,,这一概念称为实时应用 (RTA)。因此,此处我们将在主数据库中创建一个备用重做日志(注意在主数据库中创建备用重做日志。RMAN 将在备用数据库中创建它们):
SQL> alter database add standby redo logfile group 4
2> (‘+DG1/sby_redo01.rdo') size 50M;
SQL> alter database add standby redo logfile group 5
2> (‘+DG1/sby_redo02.rdo') size 50M;
SQL> alter database add standby redo logfile group 6
2> (‘+DG1/sby_redo03.rdo') size 50M;
SQL> alter database add standby redo logfile group 7
2> (‘+DG1/sby_redo04.rdo') size 50M;
这将创建 4 个备用重做日志组。

在 prolin2 服务器上的 listener.ora 文件中创建一个 pro11sb 条目:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = pro11sb)
(ORACLE_HOME = /opt/oracle/product/11g/db1)
(SID_NAME = pro11sb)
)
)LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = prolin2)(PORT = 1521))
)
重新载入监听器使之生效。
在 prolin1 上,在 $ORACLE_HOME/network/admin 下的 tnsnames.ora 文件中创建一个 pro11sb 数据库条目:
PRO11SB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = prolin2)(PORT = 1521))
)
(CONNECT_DATA =
(SID = pro11sb)
)
)
在 prolin2 上的 Oracle Home/dbs 目录中,创建一个仅含一行的 initodba11sb.ora 文件:
db_name=prolin11
这将作为备用实例的初始化文件,使用稍后介绍的 RMAN 命令将自动填充其他参数。

在 prolin2 上,进入目录 $ORACLE_BASE/admin。在其中创建 pro11sb 目录,然后在 pro11sb 目录中创建 adump 目录,用于保存备用实例的审计文件。

在 prolin1 上,在 $ORACLE_HOME/dbs 目录下,您将找到实例的口令文件,通常命名为 orapworadba11。如果没有该文件(可能性很小),则创建一个。然后将文件复制到 prolin2 的 $ORACLE_HOME/dbs 下。将其复制到新文件 orapwodba11sb。这将确保主数据库的 sysdba 连接口令也可应用到备用数据库。

在 prolin2 上,以 NOMOUNT 状态启动实例 pro11sb。
$ sqlplus / as sysdba
SQL> startup nomount
这将启动实例但不挂载任何东西。

完成开始的准备工作后,调用强大的 RMAN 脚本创建备用数据库。在 prolin1 上启动 RMAN 并运行以下脚本。您会发现将其保存到一个文件中,然后从 RMAN 提示符中运行这一脚本将更为简便。
connect target sys/oracle123@prolin11
connect auxiliary sys/oracle123@pro11sbrun {
allocate channel c1 type disk;
allocate auxiliary channel s1 type disk; duplicate target database
for standby
from active database
dorecover
spfile
parameter_value_convert 'prolin11','pro11sb'
set db_unique_name='pro11sb'
set db_file_name_cOnvert='/prolin11/','/pro11sb/'
set log_file_name_cOnvert='/prolin11/','/pro11sb/'
set control_files='/oradata/pro11sb/control01.ctl'
set fal_client='pro11sb'
set fal_server='prolin11'
set standby_file_management='AUTO'
set log_archive_cOnfig='dg_cOnfig=(prolin11,pro11sb)'
set log_archive_dest_2='service=prolin11 LGWR ASYNC valid_for=(ONLINE_LOGFILES,PRIMARY_ROLE) db_unique_name=pro11sb'
set log_archive_dest_state_2='enable'
set log_archive_format='pro11sb_%t_%s_%r.arc'
;
sql channel c1 "alter system archive log current";
sql channel s1 "alter database recover managed standby database using current logfile disconnect";
}
这一脚本将创建备用数据库,将相关的参数置于备用实例的 spfile 中,创建备用数据库的诊断目标,然后重新启动备用数据库。为助您了解这一操作的具体机理,您可以在此处查看 RMAN 命令的输出。


推荐阅读
  • 探讨密码安全的重要性
    近期,多家知名网站如CSDN、人人网、多玩、开心网等的数据库相继被泄露,其中大量用户的账户密码因明文存储而暴露无遗。本文将探讨黑客获取密码的常见手段,网站如何安全存储用户信息,以及用户应如何保护自己的密码。 ... [详细]
  • PHP面试题精选及答案解析
    本文精选了新浪PHP笔试题及最新的PHP面试题,并提供了详细的答案解析,帮助求职者更好地准备PHP相关的面试。 ... [详细]
  • 提升工作效率:掌握15个键盘快捷键
    在日常工作中,熟练掌握计算机操作技巧能够显著提升工作效率。本文将介绍15个常用的键盘快捷键,帮助用户更加高效地完成工作任务。 ... [详细]
  • JavaScript 实现图片文件转Base64编码的方法
    本文详细介绍了如何使用JavaScript将用户通过文件输入控件选择的图片文件转换为Base64编码字符串,适用于Web前端开发中图片上传前的预处理。 ... [详细]
  • 如何在U8系统中连接服务器并获取数据
    本文介绍了如何在U8系统中通过不同的方法连接服务器并获取数据,包括使用MySQL客户端连接实例的方法,如非SSL连接和SSL连接,并提供了详细的步骤和注意事项。 ... [详细]
  • mysql数据库json类型数据,sql server json数据类型
    mysql数据库json类型数据,sql server json数据类型 ... [详细]
  • 本文介绍如何通过整合SparkSQL与Hive来构建高效的用户画像环境,提高数据处理速度和查询效率。 ... [详细]
  • 本文介绍了GitHub上的一些Python开源项目,特别是IM(即时通讯)技术的应用。通过Sealtalk项目,探讨了如何利用开源SDK提升开发效率。 ... [详细]
  • Redis:缓存与内存数据库详解
    本文介绍了数据库的基本分类,重点探讨了关系型与非关系型数据库的区别,并详细解析了Redis作为非关系型数据库的特点、工作模式、优点及持久化机制。 ... [详细]
  • Linux环境下MySQL的安装与配置
    本文详细介绍了在Linux系统上安装和配置MySQL的步骤,包括安装前的准备工作、下载和解压安装包、初始化数据库、配置文件编辑、启动服务以及设置开机自启动等。 ... [详细]
  • 本文介绍了如何使用 SQL Server 的 OPENDATASOURCE 函数连接到不同的服务器和实例,并查询数据。 ... [详细]
  • Django与Python及其他Web框架的对比
    本文详细介绍了Django与其他Python Web框架(如Flask和Tornado)的区别,并探讨了Django的基本使用方法及与其他语言(如PHP)的比较。 ... [详细]
  • MySQL Administrator: 监控与管理工具
    本文介绍了 MySQL Administrator 的主要功能,包括图形化监控 MySQL 服务器的实时状态、连接健康度、内存健康度以及如何创建自定义的健康图表。此外,还详细解释了状态变量和系统变量的管理。 ... [详细]
  • Vulnhub DC3 实战记录与分析
    本文记录了在 Vulnhub DC3 靶机上的渗透测试过程,包括漏洞利用、内核提权等关键步骤,并总结了实战经验和教训。 ... [详细]
  • Oracle 10g 和 11g 32位 OCI.DLL 文件下载
    32位 PL/SQL Developer 访问 64位 Oracle 11g 数据库时,需要使用 32位的 OCI.DLL 文件以确保正常连接和数据访问。本文将详细介绍如何获取并配置此文件。 ... [详细]
author-avatar
痷徥一痞駺4
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有