企业运维之云上网络原理与实践-备份与恢复(中)

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 企业运维之云上网络原理与实践-备份与恢复


本地存储目录

 

1. postgres=# show data_directory;  

2.     data_directory  

3. ------------------------  

4. /home/postgres/primary  

5. (1 row)  

 

可以通过上述命令在数据库中获取本地存储目录的位置,可以看到它是类似于PostgreSQL的数据目录。

 

1. .  

2. ├── base  

3. │   ├── 1  

4. │   ├── 13938  

5. │   ├── 13939  

6. │   └── 13940  

7. ├── global  

8. ├── pg_commit_ts  

9. ├── pg_csnlog  

10. ├── pg_dynshmem  

11. ├── pg_log  

12. ├── pg_logical  

13. │   ├── mappings  

14. │   └── snapshots  

15. ├── pg_logindex  

16. ├── pg_multixact  

17. │   ├── members  

18. │   └── offsets  

19. ├── pg_notify  

20. ├── pg_replslot  

21. ├── pg_serial  

22. ├── pg_snapshots  

23. ├── pg_stat  

24. ├── pg_stat_tmp  

25. ├── pg_subtrans  

26. ├── pg_tblspc  

27. ├── pg_xact  

28. ├── polar_cache_trash  

29. ├── polar_fullpage  

30. └── polar_rel_size_cache  

 

本地存储目录中,大多都是通过initdb命令生成的文件或目录。随着数据库服务运行,这里会生成更多的本地文件,如临时文件、缓存文件、配置文件、日志文件。

 

由于本地存储目录中的文件不涉及核心数据,因此在做备份时本地存储目录是可选的。您可以仅备份共享存储上的数据目录,然后用initdb重新生成一份新的本地存储目录。但是需要记住之前的本地配置信息,如postgresql.conf,pg_hba.conf等。

 

提示

 

如果您不能记住历史配置,或者您需要保留历史日志,建议您将本地存储目录也进行备份。可以将这个目录完全复制后修改配置文件来搭建RO或者Standby。

 

共享存储目录

 

1. postgres=# show polar_datadir;  

2.     polar_datadir  

3. -----------------------  

4. /nvme0n1/shared_data/  

5. (1 row)  

 

 

1.

2. .  

3. ├── base  

4. │   ├── 1  

5. │   ├── 16555  

6. │   ├── 16556  

7. │   ├── 16557  

8. │   └── 16558  

9. ├── global  

10. ├── pg_commit_ts  

11. ├── pg_csnlog  

12. ├── pg_logindex  

13. ├── pg_multixact  

14. │   ├── members  

15. │   └── offsets  

16. ├── pg_replslot  

17. ├── pg_tblspc  

18. ├── pg_twophase  

19. ├── pg_wal  

20. │   └── archive_status  

21. ├── pg_xact  

22. ├── polar_dma  

23. │   ├── consensus_cc_log  

24. │   └── consensus_log  

25. ├── polar_flog  

26. ├── polar_flog_index  

27. ├── polar_fraindex  

28. │   ├── fbpoint  

29. │   └── pg_xact  

30. └── polar_fullpage  

 

共享存储目录中存放PolarDB的核心数据文件,如表文件、索引文件、WAL日志、DMA、LogIndex、Flashback等。这些文件被一个RW节点和多个RO节点共享,因此是必须备份的。您可以使用copy命令、存储快照、网络传输等方式进行备份。如果您没有更好的选择,推荐使用polar_basebackup命令。

 

polar_basebackup备份工具

 

下面介绍一下PolarDB的备份工具polar_basebackup,它由pg_basebackup

改造而来,且完全兼容pg_baseabckup,也就是说它同样可以用于对PostgreSQL做备份恢复。polar_basebackup在PolarDB二进制安装目录下的bin/目录中,您可以配置export环境变量来直接使用它。

1.

2. polar_basebackup takes a base backup of a running PostgreSQL server.  

3.  

4. Usage:  

5.  polar_basebackup [OPTION]...  

6.  

7. Options controlling the output:  

8.  -D, --pgdata=DIRECTORY receive base backup into directory  

9.  -F, --format=p|t       output format (plain (default), tar)  

10.  -r, --max-rate=RATE    maximum transfer rate to transfer data directory  

11.                         (in kB/s, or use suffix "k" or "M")  

12.  -R, --write-recovery-conf  

13.                         write recovery.conf for replication  

14.  -T, --tablespace-mapping=OLDDIR=NEWDIR  

15.                         relocate tablespace in OLDDIR to NEWDIR  

16.      --waldir=WALDIR    location for the write-ahead log directory  

17.  -X, --wal-method=none|fetch|stream  

18.                         include required WAL files with specified method  

19.  -z, --gzip             compress tar output  

20.  -Z, --compress=0-9     compress tar output with given compression level  

21.  

22. General options:  

23.  -c, --checkpoint=fast|spread  

24.                         set fast or spread checkpointing  

25.  -C, --create-slot      create replication slot  

26.  -l, --label=LABEL      set backup label  

27.  -n, --no-clean         do not clean up after errors  

28.  -N, --no-sync          do not wait for changes to be written safely to disk  

29.  -P, --progress         show progress information  

30.  -S, --slot=SLOTNAME    replication slot to use  

31.  -v, --verbose          output verbose messages  

32.  -V, --version          output version information, then exit  

33.      --no-slot          prevent creation of temporary replication slot  

34.      --no-verify-checksums  

35.                         do not verify checksums  

36.  -?, --help             show this help, then exit  

37.  

38. Connection options:  

39.  -d, --dbname=CONNSTR   connection string  

40.  -h, --host=HOSTNAME    database server host or socket directory  

41.  -p, --port=PORT        database server port number  

42.  -s, --status-interval=INTERVAL  

43.                         time between status packets sent to server (in seconds)  

44.  -U, --username=NAME    connect as specified database user  

45.  -w, --no-password      never prompt for password  

46.  -W, --password         force password prompt (should happen automatically)  

47.      --polardata=datadir  receive polar data backup into directory  

48.      --polar_disk_home=disk_home  polar_disk_home for polar data backup  

49.      --polar_host_id=host_id  polar_host_id for polar data backup  

50.      --polar_storage_cluster_name=cluster_name  polar_storage_cluster_name for polar data backup  

 

可以看到polar_basebackup的大部分参数及用法都和pg_basebackup

一致,只是多了以下几个参数,下面重点来介绍一下:

 

polardata:如果您备份的实例是PolarDB共享存储架构,这个参数用于指定PolarDB共享存储目录的位置。如果您不指定,将会使用默认目录polar_shared_data,并且放在本地存储目录(即-D/--pgdata所指定的参数)下面。如果您对PostgreSQL备份则无需关心他。

 

polar_disk_home:如果您备份的实例是PolarDB共享存储架构,且您希望将共享存储目录通过PFS写入共享存储设备,则需要指定这个参数,它是PFS的使用参数。

 

polar_host_id:如果您备份的实例是PolarDB共享存储架构,且您希望将共享存储目录通过PFS写入共享存储设备,则需要指定这个参数,它是PFS的使用参数。

 

polar_storage_cluster_name:如果您备份的实例是PolarDB共享存储架构,且您希望将共享存储目录通过PFS写入共享存储设备,则需要指定这个参数,它是PFS的使用参数。

接下篇:https://developer.aliyun.com/article/1223083?groupCode=polardbforpg

相关实践学习
函数计算X RDS PostgreSQL,基于LLM大语言模型构建AI知识库
基于ChatGLM6B 大语言模型构建AI知识库问答应用。答疑群17125058181
相关文章
|
8天前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
28 2
|
7天前
|
运维 供应链 安全
SD-WAN分布式组网:构建高效、灵活的企业网络架构
本文介绍了SD-WAN(软件定义广域网)在企业分布式组网中的应用,强调其智能化流量管理、简化的网络部署、弹性扩展能力和增强的安全性等核心优势,以及在跨国企业、多云环境、零售连锁和制造业中的典型应用场景。通过合理设计网络架构、选择合适的网络连接类型、优化应用流量优先级和定期评估网络性能等最佳实践,SD-WAN助力企业实现高效、稳定的业务连接,加速数字化转型。
SD-WAN分布式组网:构建高效、灵活的企业网络架构
|
5天前
|
运维 应用服务中间件 持续交付
自动化运维的利器:Ansible入门与实践
【10月更文挑战第21天】在现代IT基础设施的管理中,自动化运维已成为提升效率、降低错误率的关键。Ansible,作为一种简单而强大的自动化工具,正被广泛应用于配置管理、应用部署和任务自动化等领域。本文将引导你了解Ansible的基本概念,通过实际案例展示如何利用Ansible简化日常运维工作,并探讨其在现代IT运维中的应用价值。无论你是新手还是有经验的系统管理员,这篇文章都将为你开启Ansible的高效之旅提供指导。
|
8天前
|
安全 物联网 网络安全
中小企业提高网络安全的五种方式
【10月更文挑战第18天】中小企业提高网络安全的五种方式:1. 小企业并非免疫;2. 定期更新软件和硬件;3. 持续教育员工;4. 启用并维护安全功能;5. 制定全面的网络安全策略。天下数据IDC提供专业的服务器解决方案及数据中心安全服务,保障企业信息安全。
15 1
|
11天前
|
运维 自然语言处理 开发者
作为一名运维人员,使用通义灵码个人版处理日常工作中的代码相关任务,极大地提升了我的工作效率。以下是我使用通义灵码的具体实践场景、效果和心得,以及相应的截图。
作为一名运维人员,我使用通义灵码处理日常工作中的代码任务,效率提升了30%。通义灵码帮助我快速理解复杂代码、生成准确的代码注释,并能从自然语言生成代码示例,大幅减少了代码编写和理解的时间。
37 3
|
11天前
|
人工智能 关系型数据库 数据中心
2024 OCP全球峰会:阿里云为代表的中国企业,引领全球AI网络合作和技术创新
今年的OCP(Open Compute Project)峰会于2024年10月14日至17日在美国加州圣何塞举行,在这场全球瞩目的盛会上,以阿里云为代表的中国企业,展示了他们在AI网络架构、液冷技术、SRv6和广域网等前沿领域的强大创新能力,持续引领全球合作与技术创新。
|
12天前
|
机器学习/深度学习 人工智能 监控
深入理解深度学习中的卷积神经网络(CNN):从原理到实践
【10月更文挑战第14天】深入理解深度学习中的卷积神经网络(CNN):从原理到实践
41 1
|
7天前
|
运维 监控 安全
SD-WAN异地组网加速:提升企业网络性能的关键
随着企业全球化扩展,异地组网成为重要需求。传统广域网(WAN)存在延迟高、带宽不足等问题,而SD-WAN通过智能流量调度、降低成本、提升安全性和快速部署等优势,成为理想解决方案。本文详细解析SD-WAN在异地组网中的优势、应用场景及最佳实践,帮助企业实现高效跨地域网络连接。
|
8天前
|
运维 监控 jenkins
运维自动化实践:利用Jenkins实现高效CI/CD流程
【10月更文挑战第18天】运维自动化实践:利用Jenkins实现高效CI/CD流程
|
2天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第23天】在数字时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将探讨网络安全漏洞、加密技术和安全意识等方面的内容,以帮助读者更好地了解如何保护自己的网络安全。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,我们将为读者提供一些实用的建议和技巧,以增强他们的网络安全防护能力。