查看原文
其他

WAL-G完美支持IvorySQL的备份恢复

梁翔宇 IvorySQL开源数据库社区
2024-11-17

WAL-G是一款基于Go语言精心打造的备份恢复工具,以其简洁的操作流程、卓越的性能表现以及安全高效而著称。它主要为PostgreSQL、MySQL/MariaDB以及MS SQL Server等数据库系统提供全量备份与增量备份的恢复解决方案。此外,在其Beta版本中,WAL-G还进一步扩展了支持范围,增添了对MongoDB和Redis等数据库的支持,从而满足了更多用户对于数据库备份恢复的需求。

在测试环境中,WAL-G的恢复速度远高于WAL-E,其恢复时的写入性能高达838MB/s,这一性能指标达到了WAL-E的4倍之多。在更高配置的系统中,WAL-G的这一性能优势预计将会得到进一步的放大。在Oracle兼容模式下,IvorySQL同样可以完美适配 WAL-G,用户可以借助WAL-G高效的恢复速度,快速恢复出一个完整的IvorySQL数据库实例


下面,我们将介绍 WAL-G 的源码编译、安装及对IvorySQL的备份恢复过程。




01

安装过程

1.1 安装环境


Linux CentOS 7.9


1.2 安装步骤


1)下载源码

git clone git@github.com:wal-g/wal-g.git

2)依赖安装与环境变量配置

yum install -y lzo-devel libbrotli libsodiumexport USE_BROTLI=1export USE_LIBSODIUM=1


3)源码编译与安装

cd wal-gmake depsmake pg_buildmain/pg/wal-g --version

ln -s <project_path>/main/pg/wal-g /usr/bin/wal-g

4)确认安装成功

wal-g --version



02

对IvorySQL数据库进行备份恢复

2.1 备份前准备


安装并启动一个Oracle兼容模式的IvorySQL数据库,安装启动方法参阅:https://docs.ivorysql.org/cn/ivorysql-doc/v3.2/v3.2/3


在IvorySQL的data目录下,您可以编辑postgresql.conf配置文件,将archive_mode参数设置为on以启用归档模式,并将archive_command修改为archive_command = 'test ! -f /home/ivorysql/archive_dir/%f && cp %p /home/ivorysql/archive_dir/%f'


注:/home/ivorysql/archive_dir/ 可以替换成任一路径


在重启IvorySQL数据库之后,通过psql连接数据库,接着创建一张包含Oracle兼容字段的表,并向表中插入一些测试数据,以便于后续的验证和认证过程。


2.2 配置wal-g环境变量

export WALG_FILE_PREFIX=<folder_path>export PGDATA=<pgdata>export PGPORT=1521export PGHOST=localhost


2.3 运行wal-g进行备份

wal-g backup-push $PGDATA


查看备份出来的文件


2.4 运行wal-g进行恢复


1) 使用最近一次备份进行恢复

wal-g back-fetch /usr/local/ivorysql/ivorysql-3/data-wal-g-backup LATEST


2 )恢复某次备份

wal-g back-fetch /usr/local/ivorysql/ivorysql-3/data-wal-g-backup base_000000010000000000000004


2.5 启动新库


修改新库data目录下的postgresql.conf


cd /usr/local/ivorysql/ivorysql-3/data-wal-g-backupvim postgresql.conf

将restore_command的参数修改为restore_command = 'cp /home/ivorysql/archive_dir/%f %p'


修改 postgresql.conf 中的 port和ivorysql.conf中的port (避免端口冲突)

touch recovery.signal


>>>启动数据库

./bin/pg_ctl -D data-wal-g-backup -l wal-g-backup-logfile start


通过psql连接到IvorySQL的Oracle兼容模式下进行查看,经过验证,数据库已正常启动,并且数据恢复过程也顺利完成。


至此,一个新的IvorySQL数据库实例已经恢复成功。


数据库作为企业的核心信息资产,其安全性和稳定性至关重要。其中,备份恢复是数据库管理中不可或缺的一环。WAL-G完美支持IvorySQL的备份恢复,它不仅能提高数据安全性,降低业务中断风险,还能通过高效、无缝的备份恢复方案减少备份时间和存储空间。


WAL-G的跨平台特性和对多个PostgreSQL版本的兼容,增强了用户的灵活性和可扩展性。此外,其支持RESTful接口,将备份文件直接上传至对象存储服务,加强了数据的安全性和可扩展性。这些优势共同确保了IvorySQL用户业务的稳定且持续运行。



有关WAL-G更多的使用方法,请参阅 WAL-G官方文档:

https://wal-g.readthedocs.io/PostgreSQL/


有关IvorySQL更详细的说明,请参阅IvorySQL官方文档:

https://www.ivorysql.org/


关注公众号,了解更多社区动态


- 我们是谁 -

lvorySQL是由浪潮软件集团瀚高股份主导研发的,一款深度兼容Oracle的PostgreSQL开源数据库系统。IvorySQL从底层代码层面深入把握开源技术的发展趋势,基于PostgreSQL 16.2的最新内核进行构建,同时提供了更加全面灵活的Oracle兼容功能,具备高度的SQL和PL/SQL兼容性,能够满足企业对于数据库系统多样化和高兼容性的需求。

- 推荐阅读 -

【IvorySQL技术指南

让数据更「高效」一点!IvorySQL在Neon平台上的迅速部署和灵活应用

IvorySQL Operator | 一键部署IvorySQL集群,高效管理与个性化配置尽在掌

pgvector扩展在IvorySQL Oracle兼容模式下的应用实践

IvorySQL 3.2 贡献独门秘籍,可以平滑迁移Oracle???

IvorySQL 3.2 :基于PG16.2,新增Oracle XML函数兼容功能

基于IvorySQL+Patroni+vip-manager构建高可用集群

备份恢复新体验!pgBackRest与IvorySQL的完美融合

最新版本!PG16.0最新内核,实现兼容Oracle数据库再升级

IvorySQL的IVY_GUC框架介绍与使用指南

IvorySQL新增命令及有关配置参数介绍

IvorySQL在「兼容oracle」方面做了哪些工作?

IvorySQL内核的Serverless数据库--HGNeon

迁移Oracle数据库至IvorySQL(PG兼容模式)

IvorySQL新增命令及有关配置参数介绍


【PG技术指南】
初学者指南 | PostgreSQL中的加密机制如何运作?
DBOS革命:迈克尔·斯通布雷克和无服务器计算的未来
7个维度!PostgreSQL生态展望:2024路向何方?
PostgreSQL16中的新增功能:双向逻辑复制
Kubernetes上PostgreSQL的存储策略
7个工具!让Oracle 迁移至 PostgreSQL成为可能!
4步上手Meson:让PostgreSQL 16 构建更现代化!
PostgreSQL 中的 JSON:彻底改变数据库中的数据灵活性



IvorySQL


  一款开源的兼容Oracle的PostgreSQL


官方网址:
https://www.ivorysql.org
社区仓库:
https://github.com/IvorySQL/IvorySQL
IvorySQL社区欢迎并赞赏所有类型的贡献,期待您的加入!
记得在GitHub给我们一个 ⭐奥~


点击文末的 “阅读原文”,开启您的IvorySQL3.0 Release Notes探索之旅,深入了解更多独家特性。

>>>最新版本体验链接:
https://github.com/IvorySQL/IvorySQL/releases
继续滑动看下一个
IvorySQL开源数据库社区
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存