暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

关于使用一键部署ORACLE11g ADG脚本的体验

原创 reddey 2025-07-20
131


    首先大家可以购买使用三哥的ORACLE数据库一键安装脚本,分别在主节点和备节点上传数据库安装包和安装脚本,同时要加载操作系统的安装ISO光盘,我这次部署的是ORACLE 11g ADG一主一备。

注:在安装数据库之前,最好按三哥一键安装要求,对每个节点做一下环境准备检查工作,以避免环境准备不足导致安装失败重新再来。

主节点执行数据库软件及数据库实例安装,命令如下。

./OracleShellInstall -lf ens33 `# local ip ifname`\

-n lucifer `# hostname`\

-op oracle `# oracle password`\

-d /u01 `# software base dir`\

-ord /oradata `# data dir`\

-o lucifer `# dbname`\

-dp oracle `# sys/system password`\

-ds AL32UTF8 `# database character`\

-ns AL16UTF16 `# national character`\

-redo 100 `# redo size`\

-opd Y `# optimize db`

备节点只安装数据库软件,切记不要安装数据库实例,命令如下。

./OracleShellInstall -lf ens33 `# local ip ifname`\

-n lucifer1 `# hostname`\

-op oracle `# oracle password`\

-d /u01 `# software base dir`\

-ord /oradata `# data dir`\

-o lucifer `# dbname`\

-dp oracle `# sys/system password`\

-ds AL32UTF8 `# database character`\

-ns AL16UTF16 `# national character`\

-ud Y `# optimize db`

注:主节点和备节点的数据库名称保持一致,我这里直接使用了三哥的网名lucifer作为数据库名称。

    从安装脚本命令的参数可以看出操作系统oracle用户的密码为oracle。这个密码要记住,安装过程中要用oracle用户、密码来做SSH互信。

将暮渔木鱼的一键ADG部署上传到oracle用户主目录下,并对该脚本命令加上执行权限,chmod +x OracleADGSetup.sh,

如果大家需要了解购买暮渔木鱼的一键ADG安装部署脚本可以打开这个网站链接https://blog.krielwus.top/blossom/#/articles?articleId=20333进行咨询。

执行./ OracleADGSetup.sh -p 192.168.1.6 -s 192.168.1.7

-p 192.168.1.6指的是主节点的IP地址

-s 192.168.17 备节点的IP地址,如果你有多个备节点,IP地址可以一起写上。最后我贴上一键ADG脚本安装部署日志,

[oracle@lucifer:/home/oracle/logs]$ cat console_20250719_184104.log

2025-07-19 18:41:04 [INFO] ===== Oracle ADG自动化部署脚本启动 =====

2025-07-19 18:41:04 [INFO] 脚本版本: 1.0

2025-07-19 18:41:04 [INFO] 执行时间: 2025-07-19 18:41:04

2025-07-19 18:41:04 [INFO] 执行用户: oracle

2025-07-19 18:41:04 [INFO] 日志文件: /home/oracle/logs/adg_setup_20250719_184104.log

2025-07-19 18:41:04 [INFO] 控制台日志: /home/oracle/logs/console_20250719_184104.log

 

2025-07-19 18:41:04 [INFO] 开始执行Oracle ADG自动化部署

2025-07-19 18:41:04 [INFO] 主库: 192.168.1.6

2025-07-19 18:41:04 [INFO] 备库: 192.168.1.7

2025-07-19 18:41:04 [INFO] 备库类型: SINGLE

┌──────────────────────────────────────────────────┐

│  🔐 步骤 1/6: 配置SSH互信                        │

└──────────────────────────────────────────────────┘

============================================

请输入 oracle@192.168.1.6 的密码

============================================

[1/2] 已完成 192.168.1.6 的SSH互信配置

============================================

请输入 oracle@192.168.1.7 的密码

============================================

[2/2] 已完成 192.168.1.7 的SSH互信配置

✓ 所有主机SSH互信配置完成 (2/2)

┌──────────────────────────────────────────────────┐

│  ✨ 步骤 2/6: 检测主库环境                        │

└──────────────────────────────────────────────────┘

⏳ 检测中: [##################################################] 100%

✅ 主库环境检测完成

  • 数据库名: LUCIFER

  • 主库类型: SINGLE

  • 主库版本: 11.2.0.4.0

  • 归档模式: ARCHIVELOG

 

┌──────────────────────────────────────────────────┐

│  ⚙️  步骤 3/6: 配置主库ADG参数                    │

└──────────────────────────────────────────────────┘

🔄 配置中: [##################################################] 100%

 

✅ 主库ADG参数配置完成

  • 备库名称: LUCIFES1

  • 监听器状态: 正常

 

┌──────────────────────────────────────────────────┐

│  💾 步骤 4/6: 创建主库备份                       │

└──────────────────────────────────────────────────┘

📋 备份中: [##################################################] 100%

 

✅ 主库备份完成

  • 备份位置: /tmp/adg_backup_20250719_184200

  • 备份大小: 300M

 

┌──────────────────────────────────────────────────┐

│  🖥️  步骤 5/6: 配置备库                          │

└──────────────────────────────────────────────────┘

 

🔄 配置备库 192.168.1.7: [██████████████████████████████████████████████████] 100% ✓

 

✅ 所有备库配置完成

 

┌──────────────────────────────────────────────────┐

│  ✅ 步骤 6/6: 验证ADG配置                        │

└──────────────────────────────────────────────────┘

🔍 验证配置中...

   DEST_ID DEST_NAME            STATUS     ERROR

---------- -------------------- ---------- --------------------------------------------------

         1 LOG_ARCHIVE_DEST_1   VALID

         2 LOG_ARCHIVE_DEST_2   VALID

         3 LOG_ARCHIVE_DEST_3   INACTIVE

 

 完成!

2025-07-19 18:45:27 [INFO] 清理临时备份文件...

2025-07-19 18:45:28 [INFO] ===== ADG状态详细报告 =====

2025-07-19 18:45:28 [INFO] --- 主库状态 (192.168.1.6) ---

=== 主库基本信息 ===

 

DATABASE_ROLE        DB_UNIQUE_NAME       OPEN_MODE            LOG_MODE

-------------------- -------------------- -------------------- ------------

PRIMARY              lucifer              READ WRITE           ARCHIVELOG

 

 

=== 归档目标状态 ===

 

   DEST_ID DEST_NAME            STATUS     ERROR

---------- -------------------- ---------- --------------------------------------------------

         1 LOG_ARCHIVE_DEST_1   VALID

         2 LOG_ARCHIVE_DEST_2   VALID

         3 LOG_ARCHIVE_DEST_3   INACTIVE

         4 LOG_ARCHIVE_DEST_4   INACTIVE

         5 LOG_ARCHIVE_DEST_5   INACTIVE

 

 

=== 最近的归档日志 ===

 

   THREAD#  SEQUENCE# NAME                                                         APPLIED

---------- ---------- ------------------------------------------------------------ ---------

         1         12 /u01/app/oracle/fast_recovery_area/LUCIFER/archivelog/2025_0 NO

                      7_19/o1_mf_1_12_n7pxt6yw_.arc

 

         1         11 /u01/app/oracle/fast_recovery_area/LUCIFER/archivelog/2025_0 NO

                      7_19/o1_mf_1_11_n7pxt6xl_.arc

 

         1         11 LUCIFES1                                                     NO

         1         10 /u01/app/oracle/fast_recovery_area/LUCIFER/archivelog/2025_0 NO

                      7_19/o1_mf_1_10_n7pxrkmk_.arc

 

         1         10 LUCIFES1                                                     YES

 

2025-07-19 18:45:28 [INFO] --- 备库状态 (192.168.1.7) ---

=== 备库基本信息 ===

 

DATABASE_ROLE        DB_UNIQUE_NAME       OPEN_MODE

-------------------- -------------------- --------------------

PHYSICAL STANDBY     LUCIFES1             READ ONLY WITH APPLY

 

 

=== MRP进程状态 ===

 

PROCESS    STATUS               THREAD# SEQUENCE#     BLOCK#

---------- -------------------- ------- --------- ----------

RFS        IDLE                       0         0          0

RFS        IDLE                       1        13          2

RFS        IDLE                       0         0          0

RFS        IDLE                       0         0          0

MRP0       WAIT_FOR_LOG               1        12          0

 

 

=== 归档应用状态 ===

 

THREAD# LAST_APPLIED_SEQ

------- ----------------

      1               10

 

 

=== 数据保护模式 ===

 

PROTECTION_MODE      PROTECTION_LEVEL

-------------------- --------------------

MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE

 

 

=== 日志间隙 ===

 

no rows selected

 

2025-07-19 18:45:28 [INFO] ===== ADG状态报告结束 =====

 

 

╔══════════════════════════════════════════════════════════════════════╗

║                  🎆 Oracle ADG 部署最终状态报告 🎆                     ║

╚══════════════════════════════════════════════════════════════════════╝

 

┌─────────────────────────────────────────────────────────────────────┐

│                         📊 配置概要                                 │

└─────────────────────────────────────────────────────────────────────┘

  • 数据库名称: LUCIFER

  • 数据库版本: 11.2.0.4.0

  • 主库架构: SINGLE

  • 主库服务器: 192.168.1.6

  • 主库唯一名: lucifer

  • Oracle SID: lucifer

  • 备库总数: 1

  • 备库配置:

    ├─ 备库1: 192.168.1.7

    │    └─ DB_UNIQUE_NAME: LUCIFES1

 

┌─────────────────────────────────────────────────────────────────────┐

│                      🔍 主库状态详情                                │

└─────────────────────────────────────────────────────────────────────┘

  📌 基本信息:

    • 数据库角色: PRIMARY

    • 打开模式: READWRITE

    • 保护模式: MAXIMUMPERFORMANCE

    • 当前保护级别: MAXIMUMPERFORMANCE

 

  📁 归档状态:

    • 最新归档序列号: 12

    • 归档传输目标:

      └─ LOG_ARCHIVE_DEST_1: ✓ VALID → LOG_ARCHIVE_DEST_1

      └─ LOG_ARCHIVE_DEST_2: ✓ VALID → LOG_ARCHIVE_DEST_2

 

┌─────────────────────────────────────────────────────────────────────┐

│                      💻 备库状态详情                                │

└─────────────────────────────────────────────────────────────────────┘

 

  🖥️  备库1: 192.168.1.7 (LUCIFES1)

  ═══════════════════════════════════════════════════

    📌 基本信息:

      • 连接状态: ✓ 正常

      • 数据库角色: PHYSICALSTANDBY

      • 打开模式: READONLYWITHAPPLY

      • DB_UNIQUE_NAME: LUCIFES1

      • 监听器状态: ✓ 运行中

 

    📡 日志应用状态:

      • MRP进程: ✓ MRP0 - WAIT_FOR_LOG

      • 正在应用序列号: 12

      • 最新应用的归档:         10

      • 应用延迟: +0000:00:00

      • 日志差距: 2 个归档日志

 

┌─────────────────────────────────────────────────────────────────────┐

│                      🎯 部署最终状态                                │

└─────────────────────────────────────────────────────────────────────┘

 

  ╔═══════════════════════════════════════════════════════════════╗

  ║            🎉 恭喜!ADG部署完全成功!🎉                       ║

  ╚═══════════════════════════════════════════════════════════════╝

 

  ✅ 所有检查项均已通过:

     ✓ 主库归档传输配置正确

     ✓ 所有备库监听器运行正常

     ✓ 所有备库日志应用进程正常

     ✓ 主备库之间数据同步正常

     ✓ 数据保护级别设置正确

 

┌─────────────────────────────────────────────────────────────────────┐

│                      📋 后续操作建议                                │

└─────────────────────────────────────────────────────────────────────┘

  1. 验证ADG同步状态:

     # 在主库执行

     sqlplus / as sysdba

     SQL> select thread#, max(sequence#) from v$archived_log group by thread#;

  2. 配置自动故障切换(可选):

     # 配置Fast-Start Failover

     # 使用Data Guard Broker进行管理

  3. 设置监控告警:

     # 监控归档日志传输延迟

     # 监控备库MRP进程状态

     # 监控主备库日志序列号差距

  4. 定期测试切换:

     # 建议每季度进行一次切换演练

     # 验证应用连接字符串配置

┌─────────────────────────────────────────────────────────────────────┐

│                      📊 执行信息汇总                                │

└─────────────────────────────────────────────────────────────────────┘

  • 开始时间: 2025-07-19 18:41:04

  • 结束时间: 2025-07-19 18:45:28

  • 执行时长: 0小时 4分钟 24秒

  • 详细日志: /home/oracle/logs/adg_setup_20250719_184104.log

  • 控制台日志: /home/oracle/logs/console_20250719_184104.log

  • 执行用户: oracle

  • 脚本版本: 1.0

╔══════════════════════════════════════════════════════════════════════╗

║                    感谢使用 Oracle ADG 自动化部署脚本                  ║

╚══════════════════════════════════════════════════════════════════════╝

2025-07-19 18:45:29 [INFO] ===== Oracle ADG自动化部署完成 =====

2025-07-19 18:45:29 [INFO] 部署总结:

2025-07-19 18:45:29 [INFO]   - 主库: 192.168.1.6 (SINGLE)

2025-07-19 18:45:29 [INFO]   - 备库: 192.168.1.7

2025-07-19 18:45:29 [INFO]   - 数据库: LUCIFER

2025-07-19 18:45:29 [INFO]   - 主库唯一名: lucifer

2025-07-19 18:45:29 [INFO]

2025-07-19 18:45:29 [INFO] ADG搭建结果:

2025-07-19 18:45:30 [INFO]   - 主库归档传输: ✓ 正常

2025-07-19 18:45:30 [INFO]   - 备库 192.168.1.7: ✓ 已配置为Physical Standby (READ ONLY WITH APPLY模式)

2025-07-19 18:45:30 [INFO]

2025-07-19 18:45:30 [INFO] 详细日志: /home/oracle/logs/adg_setup_20250719_184104.log

2025-07-19 18:45:30 [INFO] 控制台日志: /home/oracle/logs/console_20250719_184104.log

从安装部署日志看,暮渔木鱼的一键ADG脚本部署的效率非常高,我的centos7操作系统内存是8G的,部署ADG架构只用了4分钟 24秒。一鍵ADG脚本大大节约了DBA手工部署的时间,提高了广大DBA们的工作效率。

在主节点的的表中插入数据

SYS@lucifer SQL> insert into t values(20,'20');

1 row created.

SYS@lucifer SQL> commit;

Commit complete.

SYS@lucifer SQL> alter system archive log current;

System altered.

在备节点查询刚才插入的数据

SQL>  select * from t;

        ID NAME

---------- ----------

         1 one

         2 two

         3 three

         4 four

         5 five

         6 six

         7 seven

         8 eight

        10 10

         9 9

        11 11

        ID NAME

---------- ----------

        20 20

12 rows selected.

 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论