gpt4 book ai didi

postgresql - 最小的 PostgreSQL 数据文件集

转载 作者:行者123 更新时间:2023-11-29 12:23:41 25 4
gpt4 key购买 nike

背景:我运行依赖于 PostgreSQL 数据库的端到端测试。我需要这些测试快速、可并行、确定且独立。

因此,我想尽可能快地反复重新创建数据库——包括模式、数据和索引。我创建了一个基本图像:

  1. 启动一个 PostgreSQL 实例
  2. 运行 SQL 语句
  3. 运行 VACCUM FULL
  4. 停止实例
  5. /var/lib/postgresql/data 中的文件打包

对于每个测试,我都会快速解压该图像并运行一个 PostgreSQL 实例。


问题:一切正常,但磁盘文件似乎比需要的大。一个相当小的数据库大小仍然是 64MB。

如何实现文件级恢复的较小文件集?缩小现有文件的大小?从备份中排除一些文件?

最佳答案

感谢您阐明您的用例:

I run end-to-end tests that depend on a PostgreSQL database. I need these tests to be fast, parallelizable, deterministic, and isolated.

Therefore, I want to repeatedly recreate the database -- including schema, data, and indexes -- as quickly as possible.

最初的想法——通过路径定位一组特定的文件,并恢复它们——是脆弱的,因为路径可以而且确实会随着不同的 PostgreSQL 版本而改变。

正如评论中所讨论的,一种更具确定性的方法是使用更通用的容器技术;一个被很好践踏和suitable for the use caseDocker .有various other container options还有。

Docker 文档中有一个示例 how to set up a container running PostgreSQL .

关于postgresql - 最小的 PostgreSQL 数据文件集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54853948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com