半自动化搭建Data Guard的想法和实践(三)

简介: 今天总算抽了些时间把半自动化的脚本完成了大半,目前还缺少两部分的脚本,一部分是安装前的检查脚本,可以做一个预检查。虽然目前来看还不是必须,但是这些是标准和规范的地方,这些条件不满足,失败的概率会加大。
今天总算抽了些时间把半自动化的脚本完成了大半,目前还缺少两部分的脚本,一部分是安装前的检查脚本,可以做一个预检查。虽然目前来看还不是必须,但是这些是标准和规范的地方,这些条件不满足,失败的概率会加大。另外一部分是安装后的补充脚本,其实安装后还有很多需要注意的地方。
大体想了下,补充的脚本包含下面的部分。
配置crontab,目前的常用job是定期删除归档,定期检查监听的情况
配置iptables ,把主库的防火墙信息拷贝过来,或者作为静态备份,需要是启用
配置大页,这个可以在优化的基础上进行计算,在内核参数中修改。
禁用NUMA,这个是系统层面,虽然安装不会受到影响,但是需要在grub中禁用,而且这个操作需要重启服务器,在最后确认无误后操作。

脚本的实现思路:
目前的设计思路是在中控端运行,从主库抓取配置信息,向备库同步这些配置,生成便捷的搭建脚本。目前的脚本的核心文件是一个配置文件,命名为autodg.cnf
内容如下:
export db_name=statdb1
export pri_db_unique_name=statdb96
export pri_db_ip_addr=10.127.133.96
export std_db_unique_name=statdb3
export std_db_ip_addr=10.127.133.45

预期的目标是只需要知道主备库的IP即可,剩下的事情不用一一连接到数据库端去检查,我们需要明确搭建的数据库uniqe_name
这个工作是由一个便捷的检查脚本来得到主库的信息,脚本的执行情况如下,是否已有备库,主库的信息,重要的参数等都一目了然。

基于这些信息我们可以很顺利的完成autodg.cnf的配置。备库的信息则根据自己的需要来配置即可。
接下来的脚本就会自动读取autodg.cnf中的配置信息,从主库抓取配置信息。


主备库的明细信息,延迟,SCN都会抓取到,其实后台会进行更多的配置,对listener.ora,tnsnames.ora,hosts,pfile文件进行修改。
最后开通主备库的防火墙互通访问,当然这个还需要一个脚本open_firewall.sh,主要就是iptables命令在主备库检查开通端口访问权限。
接着半自动化的脚本来了。init_pri.sh
这个脚本会生成提示,我们需要在主库端做下面两个简单的操作,需要手动完成,全是基于安全考虑。

目前最后一个脚本是init_std.sh,会初始化备库的环境。
会把配置信息拷贝到备库,在启动数据库之前需要检查备库中的一些路径是否存在

这几个脚本,可以一下子都运行完,或者一个一个来运行,如果不跳出规范和标准,那么应该能够很快在5分钟内配置完成。
后期继续改进,我想想怎么能够更加便捷,哪些工作还可以补充进去。
目录
相关文章
|
5天前
|
敏捷开发 人工智能 Devops
探索自动化测试的高效策略与实践###
当今软件开发生命周期中,自动化测试已成为提升效率、保障质量的关键工具。本文深入剖析了自动化测试的核心价值,探讨了一系列高效策略,包括选择合适的自动化框架、设计可维护的测试脚本、集成持续集成/持续部署(CI/CD)流程,以及有效管理和维护测试用例库。通过具体案例分析,揭示了这些策略在实际应用中的成效,为软件测试人员提供了宝贵的经验分享和实践指导。 ###
|
5天前
|
机器学习/深度学习 人工智能 jenkins
软件测试中的自动化与持续集成实践
在快速迭代的软件开发过程中,自动化测试和持续集成(CI)是确保代码质量和加速产品上市的关键。本文探讨了自动化测试的重要性、常见的自动化测试工具以及如何将自动化测试整合到持续集成流程中,以提高软件测试的效率和可靠性。通过案例分析,展示了自动化测试和持续集成在实际项目中的应用效果,并提供了实施建议。
|
5天前
|
Java 测试技术 持续交付
探索自动化测试在软件开发中的关键作用与实践
在现代软件开发流程中,自动化测试已成为提升产品质量、加速交付速度的不可或缺的一环。本文深入探讨了自动化测试的重要性,分析了其在不同阶段的应用价值,并结合实际案例阐述了如何有效实施自动化测试策略,以期为读者提供一套可操作的实践指南。
|
6天前
|
Web App开发 敏捷开发 测试技术
探索自动化测试的奥秘:从理论到实践
【10月更文挑战第39天】在软件质量保障的战场上,自动化测试是提升效率和准确性的利器。本文将深入浅出地介绍自动化测试的基本概念、必要性以及如何实施自动化测试。我们将通过一个实际案例,展示如何利用流行的自动化测试工具Selenium进行网页测试,并分享一些实用的技巧和最佳实践。无论你是新手还是有经验的测试工程师,这篇文章都将为你提供宝贵的知识,帮助你在自动化测试的道路上更进一步。
|
6天前
|
敏捷开发 Java 测试技术
探索自动化测试:从理论到实践
【10月更文挑战第39天】在软件开发的海洋中,自动化测试是一艘能够带领团队高效航行的船只。本文将作为你的航海图,指引你理解自动化测试的核心概念,并分享一段实际的代码旅程,让你领略自动化测试的魅力和力量。准备好了吗?让我们启航!
|
6天前
|
机器学习/深度学习 数据采集 人工智能
智能运维:从自动化到AIOps的演进与实践####
本文探讨了智能运维(AIOps)的兴起背景、核心组件及其在现代IT运维中的应用。通过对比传统运维模式,阐述了AIOps如何利用机器学习、大数据分析等技术,实现故障预测、根因分析、自动化修复等功能,从而提升系统稳定性和运维效率。文章还深入分析了实施AIOps面临的挑战与解决方案,并展望了其未来发展趋势。 ####
|
7天前
|
数据采集 IDE 测试技术
Python实现自动化办公:从基础到实践###
【10月更文挑战第21天】 本文将探讨如何利用Python编程语言实现自动化办公,从基础概念到实际操作,涵盖常用库、脚本编写技巧及实战案例。通过本文,读者将掌握使用Python提升工作效率的方法,减少重复性劳动,提高工作质量。 ###
22 1
|
10天前
|
测试技术 API Android开发
探索软件测试中的自动化框架选择与实践####
本文深入探讨了软件测试领域内,面对众多自动化测试框架时,如何依据项目特性和团队需求做出明智选择,并分享了实践中的有效策略与技巧。不同于传统摘要的概述方式,本文将直接以一段实践指南的形式,简述在选择自动化测试框架时应考虑的核心要素及推荐路径,旨在为读者提供即时可用的参考。 ####
|
13天前
|
运维 负载均衡 Ubuntu
自动化运维的利器:Ansible入门与实践
【10月更文挑战第31天】在当今快速发展的信息技术时代,高效的运维管理成为企业稳定运行的关键。本文将引导读者了解自动化运维工具Ansible的基础概念、安装步骤、基本使用,以及如何通过实际案例掌握其核心功能,从而提升工作效率和系统稳定性。
|
15天前
|
数据管理 程序员 数据处理
利用Python自动化办公:从基础到实践####
本文深入探讨了如何运用Python脚本实现办公自动化,通过具体案例展示了从数据处理、文件管理到邮件发送等常见办公任务的自动化流程。旨在为非程序员提供一份简明扼要的实践指南,帮助他们理解并应用Python在提高工作效率方面的潜力。 ####