- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以在短时间内运行 PostgreSQL 11 的 VACUUM FULL
然后获得一些好处?还是中途取消会导致所有进度丢失?
我读过有关 pg_repack
( https://aws.amazon.com/blogs/database/remove-bloat-from-amazon-aurora-and-rds-for-postgresql-with-pg_repack/ ) 的内容,但它的工作方式(创建新表、复制数据等)对我来说听起来很冒险。这是我的偏执狂还是在生产数据库上使用它安全?
背景故事:我在 AWS Aurora PostgreSQL 11 上使用一个非常大的生产数据库。许多表有数千万条记录,但已被大幅削减。问题是磁盘上(和快照中)的表大小没有减少,因为 DELETE
和 VACUUM
(没有 FULL
)没有缩小文件。这些表在数百 GB 的范围内,恐怕运行 VACUUM FULL
将花费永远。
最佳答案
否。 VACUUM FULL
为表写入一个新的物理文件。在它完成之前停止它会使到目前为止所做的工作无效。
VACUUM FULL
rewrites the entire contents of the table into a newdisk file with no extra space, allowing unused space to be returned tothe operating system. This form is much slower and requires anACCESS EXCLUSIVE
lock on each table while it is being processed.
这是社区工具喜欢 pg_repack 的主要原因或 pg_squeeze被创建,它们更灵活,阻塞更少,而且通常也更快。 (我认为 pg_squeeze 还不适用于 Aurora)。
关于postgresql - 是否可以短时间运行 VACUUM FULL 并获得一些好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74622853/
来自 PostgreSQL(相对)新手的快速问题: 我们运行一个批处理过程,作为其最后一步,删除大部分以前的批处理。 磁盘空间是一个问题,因此我们需要确保 PostgreSQL 自行清理。 除了强制
我有一个: VACUUM cannot run inside a transaction block Redshift 中的 SQLWorkbenchJ 出现错误,但我已经提交了在此之前的所有事务。
SQLite Vacuum VACUUM 命令通过复制主数据库中的内容到一个临时数据库文件,然后清空主数据库,并从副本中重新载入原始的数据库文件。这消除了空闲页,把表中的数据排列为连续的,另外会清理
我有一个 android 应用程序,它涉及登录应用程序并执行许多 CRUD 操作。当用户第一次登录时,如果有任何可供该用户下载的数据,它会快速记录他/她。但是后来再次重新登录时,过程很慢,有时需要20
我目前正在清理一个具有 2 个索引和 2.5 亿个事件行以及大约同样多(或更多)的死行的表。我从我的客户端计算机(笔记本电脑)向我的服务器发出命令 VACCUM FULL ANALYZE。在过去的 3
我使用 PL/pgSQL 编写了一个脚本,我在 pgAdmin III 中运行。该脚本删除现有的数据库内容,然后为所需的测试场景(通常是各种类型的负载测试)添加一堆“示例”数据。加载数据后,我想“真空
我有一个移动应用程序同步过程。事务对数据库做了很多修改。由于这是在移动设备上完成的,因此我需要发出 VACUUM 来压缩数据库。 我想知道什么时候应该发出 VACUUM 在交易中,作为最终声明 还是在
databaseInstance.execSQL("PRAGMA auto_vacuum = FULL"); 目前我在创建数据库之后和创建数据库表之前使用它。我用数据库做了一些事务,所有这些数据的大小
如何为我的应用程序 VACUUM 我的 RoomDatabase?我围绕 Room 构建了我的整个应用程序,在某个时候,一张大 table 经常被删除,然后又被填满。 我试图用查询创建一个额外的 DA
我需要在执行VACUUM ANALYZE 后释放存储空间。我知道有 VACUUM FULL 但问题是,它锁定了可能导致问题的表(如果有正在进行的事务)。 有没有其他方法可以释放空间给操作系统? 感谢您
我刚刚在 Postgres 表上运行 Vacuum 以尝试恢复磁盘空间,但结果是所有磁盘空间都已被占用。 Vacuum crete 日志文件或事务日志是否可以删除? 最佳答案 我假设您执行了 VACU
来自 PostgreSQL 10.4 手册中关于完全真空的内容: Note that they also temporarily use extra disk space approximately
我的数据库中有一张表占用了 161GB 的硬盘空间。 200Gb 硬盘只剩下 5GB 可用空间。 以下命令显示我的表占用了 161GB 硬盘空间, 选择 pg_size_pretty(pg_total
我们有一个使用 PostgreSQL 数据库服务器的产品,该产品部署在数百个客户端上。他们中的一些人多年来收集了数十 GB 的数据。因此,在下一个版本中,我们将引入自动清理程序,该程序将在夜间批处理作
正常情况下,我正在使用我的应用程序,超过 30000 次下载没有问题。但我看到此错误开始出现在 android 开发人员控制台(崩溃和 ANRS) 中。 by app version 3.1.1 1
我在生产中继承了一个 PostgreSQL 数据库,其中有一个大小约为 250 GB 的表。它只有大约一万行事件行,我估计不超过 20 MB。 该表增长到如此大小是因为 AUTOVACUUM已经关闭了
使用此代码: var db = google.gears.factory.create('beta.database'); db.open('cominar'); db.execute('CREATE
是否可以在短时间内运行 PostgreSQL 11 的 VACUUM FULL 然后获得一些好处?还是中途取消会导致所有进度丢失? 我读过有关 pg_repack ( https://aws.amaz
是否可以在短时间内运行 PostgreSQL 11 的 VACUUM FULL 然后获得一些好处?还是中途取消会导致所有进度丢失? 我读过有关 pg_repack ( https://aws.amaz
有一个表,它有 200 行。但是显示的事件元组数量不止于此(大约 60K)。 select count(*) from subscriber_offset_manager; count ------
我是一名优秀的程序员,十分优秀!