GoldenGate教程FG078-OGG与数据库云平台集成实战
本文详细介绍OGG与数据库云平台的集成方法,包括AWS RDS集成、Azure SQL集成、Google Cloud SQL集成、阿里云RDS集成等内容。风哥教程参考GoldenGate官方文档GoldenGate云平台集成指南、GoldenGate云数据库手册等内容,帮助读者掌握OGG云平台集成的实战技巧。
目录大纲
Part01-基础概念与理论知识
1.1 OGG云平台集成概述
1.2 云平台架构特点
1.3 云平台集成原理
Part02-生产环境规划与建议
2.1 云平台架构规划
2.2 网络连接规划
2.3 安全策略规划
Part03-生产环境项目实施方案
3.1 AWS RDS集成配置
3.2 Azure SQL集成配置
3.3 阿里云RDS集成配置
Part04-生产案例与实战讲解
4.1 本地到AWS RDS同步实战
4.2 AWS RDS到Azure SQL同步实战
4.3 混合云数据同步实战
Part05-风哥经验总结与分享
5.1 OGG云平台集成最佳实践
5.2 云平台集成经验总结
5.3 云平台监控与运维
Part01-基础概念与理论知识
1.1 OGG云平台集成概述
OGG云平台集成通过OGG实现本地数据库与云数据库之间的数据同步,学习交流加群风哥微信: itpux-com。
云平台集成:
1. 本地到云:本地数据库到云数据库
2. 云到云:云数据库到云数据库
3. 云到本地:云数据库到本地数据库
4. 混合云:混合云环境数据同步
5. 多云:多云环境数据同步
cd /GoldenGate/app
./ggsci
Version 23.0.0.0.0
Build 001
GGSCI (fgedu.net.cn) 1> INFO ALL
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING E_CLOUD 00:00:02 00:00:00
REPLICAT RUNNING R_CLOUD 00:00:03 00:00:01
1.2 云平台架构特点
云平台架构具有弹性扩展、高可用性、按需付费等特点。
架构特点:
1. 弹性扩展:按需扩展资源
2. 高可用性:高可用架构
3. 按需付费:按使用量付费
4. 全球部署:全球部署能力
5. 安全可靠:安全可靠架构
sqlplus fgedu/fgedu123@aws_rds_fgedudb
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0
SQL> SELECT * FROM v$version;
—————————————————————-
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0
PL/SQL Release 19.0.0.0.0
CORE 19.0.0.0.0
TNS for Linux: Version 19.0.0.0.0
NLSRTL Version 19.0.0.0.0
1.3 云平台集成原理
OGG云平台集成通过OGG Extract和Replicat实现数据同步。
集成原理:
1. 数据捕获:Extract捕获源端数据
2. 数据传输:Trail文件传输数据
3. 数据应用:Replicat应用数据
4. 网络连接:VPN或专线连接
5. 安全加密:SSL加密传输
Part02-生产环境规划与建议
2.1 云平台架构规划
根据业务需求,设计合理的云平台架构。
架构规划:
1. 拓扑结构:设计拓扑结构
2. 网络架构:设计网络架构
3. 安全架构:设计安全架构
4. 高可用架构:设计高可用架构
5. 灾备架构:设计灾备架构
ping -c 5 aws-rds-endpoint.amazonaws.com
64 bytes from 172.31.0.1: icmp_seq=1 ttl=64 time=5.2 ms
64 bytes from 172.31.0.1: icmp_seq=2 ttl=64 time=5.1 ms
64 bytes from 172.31.0.1: icmp_seq=3 ttl=64 time=5.3 ms
64 bytes from 172.31.0.1: icmp_seq=4 ttl=64 time=5.0 ms
64 bytes from 172.31.0.1: icmp_seq=5 ttl=64 time=5.2 ms
— aws-rds-endpoint.amazonaws.com ping statistics —
5 packets transmitted, 5 received, 0% packet loss
2.2 网络连接规划
规划云平台网络连接方案。
网络规划:
1. VPN连接:VPN连接方案
2. 专线连接:专线连接方案
3. 公网连接:公网连接方案
4. 混合连接:混合连接方案
5. 优化连接:优化连接方案
2.3 安全策略规划
规划云平台安全策略。
安全规划:
1. 网络安全:网络安全策略
2. 数据加密:数据加密策略
3. 访问控制:访问控制策略
4. 审计日志:审计日志策略
5. 合规要求:合规要求策略
Part03-生产环境项目实施方案
3.1 AWS RDS集成配置
配置OGG与AWS RDS的集成。
GGSCI (fgedu.net.cn)> ADD EXTRACT E_AWS, INTEGRATED TRANLOG, BEGIN NOW
GGSCI (fgedu.net.cn)> ADD EXTTRAIL /GoldenGate/app/dirdat/aw, EXTRACT E_AWS
GGSCI (fgedu.net.cn)> EDIT PARAMS E_AWS
EXTRACT E_AWS
USERID fgedu, PASSWORD fgedu123
EXTTRAIL /GoldenGate/app/dirdat/aw
— 表映射配置
TABLE fgedu01.fgedu_orders;
TABLE fgedu01.fgedu_products;
TABLE fgedu01.fgedu_customers;
GGSCI (fgedu.net.cn)> ADD REPLICAT R_AWS, EXTTRAIL /GoldenGate/app/dirdat/aw
GGSCI (fgedu.net.cn)> EDIT PARAMS R_AWS
REPLICAT R_AWS
USERID fgedu, PASSWORD fgedu123@aws_rds_fgedudb
ASSUMETARGETDEFS
— 表映射配置
MAP fgedu01.fgedu_orders, TARGET fgedu01.fgedu_orders;
MAP fgedu01.fgedu_products, TARGET fgedu01.fgedu_products;
MAP fgedu01.fgedu_customers, TARGET fgedu01.fgedu_customers;
3.2 Azure SQL集成配置
配置OGG与Azure SQL的集成。
GGSCI (fgedu.net.cn)> ADD EXTRACT E_AZURE, INTEGRATED TRANLOG, BEGIN NOW
GGSCI (fgedu.net.cn)> ADD EXTTRAIL /GoldenGate/app/dirdat/az, EXTRACT E_AZURE
GGSCI (fgedu.net.cn)> EDIT PARAMS E_AZURE
EXTRACT E_AZURE
USERID fgedu, PASSWORD fgedu123
EXTTRAIL /GoldenGate/app/dirdat/az
— 表映射配置
TABLE fgedu01.fgedu_orders;
TABLE fgedu01.fgedu_products;
TABLE fgedu01.fgedu_customers;
GGSCI (fgedu.net.cn)> ADD REPLICAT R_AZURE, EXTTRAIL /GoldenGate/app/dirdat/az
GGSCI (fgedu.net.cn)> EDIT PARAMS R_AZURE
REPLICAT R_AZURE
TARGETDB LIBFILE libggjava.so SET property=dirprm/azure.props
— Azure连接配置
REPORTCOUNT EVERY 100 RECORDS, RATE
GROUPTRANSOPS 10000
— 表映射配置
MAP fgedu01.fgedu_orders, TARGET fgedu01.fgedu_orders;
MAP fgedu01.fgedu_products, TARGET fgedu01.fgedu_products;
MAP fgedu01.fgedu_customers, TARGET fgedu01.fgedu_customers;
vi /GoldenGate/app/dirprm/azure.props
gg.handler.azurehandler.type=azure
gg.handler.azurehandler.ConnectionString=jdbc:sqlserver://azure-sql-server.database.windows.net:1433;database=fgedudb;user=fgedu@azure-sql-server;password=fgedu123;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;
gg.handler.azurehandler.JDBCDriver=com.microsoft.sqlserver.jdbc.SQLServerDriver
gg.handler.azurehandler.WriteMode=insert
3.3 阿里云RDS集成配置
配置OGG与阿里云RDS的集成。
GGSCI (fgedu.net.cn)> ADD EXTRACT E_ALIYUN, INTEGRATED TRANLOG, BEGIN NOW
GGSCI (fgedu.net.cn)> ADD EXTTRAIL /GoldenGate/app/dirdat/al, EXTRACT E_ALIYUN
GGSCI (fgedu.net.cn)> EDIT PARAMS E_ALIYUN
EXTRACT E_ALIYUN
USERID fgedu, PASSWORD fgedu123
EXTTRAIL /GoldenGate/app/dirdat/al
— 表映射配置
TABLE fgedu01.fgedu_orders;
TABLE fgedu01.fgedu_products;
TABLE fgedu01.fgedu_customers;
GGSCI (fgedu.net.cn)> ADD REPLICAT R_ALIYUN, EXTTRAIL /GoldenGate/app/dirdat/al
GGSCI (fgedu.net.cn)> EDIT PARAMS R_ALIYUN
REPLICAT R_ALIYUN
USERID fgedu, PASSWORD fgedu123@aliyun_rds_fgedudb
ASSUMETARGETDEFS
— 表映射配置
MAP fgedu01.fgedu_orders, TARGET fgedu01.fgedu_orders;
MAP fgedu01.fgedu_products, TARGET fgedu01.fgedu_products;
MAP fgedu01.fgedu_customers, TARGET fgedu01.fgedu_customers;
Part04-生产案例与实战讲解
4.1 本地到AWS RDS同步实战
本案例展示本地到AWS RDS的数据同步。
GGSCI (fgedu.net.cn)> START EXTRACT E_AWS
EXTRACT E_AWS starting
Extract started successfully.
GGSCI (fgedu.net.cn)> START REPLICAT R_AWS
REPLICAT R_AWS starting
Replicat started successfully.
sqlplus fgedu/fgedu123@fgedudb01
Connected.
SQL> INSERT INTO fgedu01.fgedu_orders (
order_id, customer_id, order_date,
order_status, total_amount, create_time, update_time
) VALUES (
20240001, 500123, SYSDATE,
‘PENDING’, 1500.00, SYSDATE, SYSDATE
);
SQL> COMMIT;
sqlplus fgedu/fgedu123@aws_rds_fgedudb
Connected.
SQL> SELECT * FROM fgedu01.fgedu_orders WHERE order_id = 20240001;
———- ———– ——————- ———— ———— ——————- ——————-
20240001 500123 2024-01-15 10:00:00 PENDING 1500 2024-01-15 10:00:00 2024-01-15 10:00:00
4.2 AWS RDS到Azure SQL同步实战
展示AWS RDS到Azure SQL的数据同步。
GGSCI (fgedu.net.cn)> START EXTRACT E_AZURE
EXTRACT E_AZURE starting
Extract started successfully.
GGSCI (fgedu.net.cn)> START REPLICAT R_AZURE
REPLICAT R_AZURE starting
Replicat started successfully.
GGSCI (fgedu.net.cn)> LAG REPLICAT R_AZURE
REPLICAT R_AZURE
Lag 00:00:05
At 2024-01-15 10:35:00
4.3 混合云数据同步实战
展示混合云环境的数据同步。
GGSCI (fgedu.net.cn)> START EXTRACT E_ALIYUN
EXTRACT E_ALIYUN starting
Extract started successfully.
GGSCI (fgedu.net.cn)> START REPLICAT R_ALIYUN
REPLICAT R_ALIYUN starting
Replicat started successfully.
GGSCI (fgedu.net.cn)> INFO ALL
MANAGER RUNNING
EXTRACT RUNNING E_AWS 00:00:02 00:00:00
EXTRACT RUNNING E_AZURE 00:00:03 00:00:01
EXTRACT RUNNING E_ALIYUN 00:00:04 00:00:02
REPLICAT RUNNING R_AWS 00:00:05 00:00:02
REPLICAT RUNNING R_AZURE 00:00:06 00:00:03
REPLICAT RUNNING R_ALIYUN 00:00:07 00:00:04
Part05-风哥经验总结与分享
5.1 OGG云平台集成最佳实践
基于实际项目经验,总结OGG云平台集成的最佳实践。
最佳实践:
1. 网络优化:优化网络连接
2. 安全加固:加强安全措施
3. 监控告警:完善监控告警
4. 容灾规划:制定容灾规划
5. 成本优化:优化云成本
5.2 云平台集成经验总结
总结OGG云平台集成的经验和技巧。
集成经验:
1. 网络规划:合理规划网络
2. 安全策略:制定安全策略
3. 性能优化:优化同步性能
4. 监控告警:完善监控告警
5. 容灾备份:建立容灾备份
5.3 云平台监控与运维
提供OGG云平台监控与运维的工具和方法。
vi /GoldenGate/app/scripts/cloud_monitor.sh
# cloud_monitor.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
OGG_HOME=/GoldenGate/app
LOG_FILE=$OGG_HOME/logs/cloud_monitor.log
monitor_cloud_process() {
local process=$1
local status=$(echo “INFO $process” | $OGG_HOME/ggsci 2>/dev/null | grep “Status” | awk ‘{print $2}’)
local lag=$(echo “LAG $process” | $OGG_HOME/ggsci 2>/dev/null | grep “Lag” | awk ‘{print $2}’)
echo “进程 $process: 状态=$status, 延迟=$lag” >> $LOG_FILE
}
monitor_cloud_connection() {
local cloud=$1
local endpoint=$2
local latency=$(ping -c 3 $endpoint | tail -1 | awk -F’/’ ‘{print $5}’)
echo “云平台 $cloud: 延迟=${latency}ms” >> $LOG_FILE
}
echo “========== 云平台监控: $(date) ==========” >> $LOG_FILE
# 监控所有云平台进程
for process in E_AWS E_AZURE E_ALIYUN R_AWS R_AZURE R_ALIYUN; do
monitor_cloud_process $process
done
# 监控云平台连接
monitor_cloud_connection “AWS” “aws-rds-endpoint.amazonaws.com”
monitor_cloud_connection “Azure” “azure-sql-server.database.windows.net”
monitor_cloud_connection “Aliyun” “aliyun-rds-endpoint.rds.aliyuncs.com”
chmod +x /GoldenGate/app/scripts/cloud_monitor.sh
/GoldenGate/app/scripts/cloud_monitor.sh
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
