暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
Halo数据库之SQL命令--VACUUM.docx
60
5页
0次
2024-04-11
免费下载
VACUUM
VACUUM —
垃圾收集并根据需要分析一个数据库
大纲
VACUUM [ ( option [, ...] ) ] [ table_and_columns [, ...] ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ ANALYZE ] [ table_and_columns
[, ...] ]
其中
option
可以是下列之一:
FULL [ boolean ]
FREEZE [ boolean ]
VERBOSE [ boolean ]
ANALYZE [ boolean ]
DISABLE_PAGE_SKIPPING [ boolean ]
SKIP_LOCKED [ boolean ]
INDEX_CLEANUP [ boolean ]
TRUNCATE [ boolean ]
PARALLEL integer
table_and_columns
是:
table_name [ ( column_name [, ...] ) ]
描述
VACUUM
收回由死亡元组占用的存储空间。在通常操作中,被删除或者被更新废弃的元组
并没有在物理上从它们的表中移除,它们将一直存在直到一次
VACUUM
被执行。因此有
必要周期性地做
VACUUM
,特别是在频繁被更新的表上。
在没有
table_and_columns
列表的情况下,
VACUUM
会处理当前用户具有清理权限的当
前数据库中的每一个表和物化视图。如果给出一个列表,
VACUUM
可以只处理列表中的那
些表。
VACUUM ANALYZE
对每一个选定的表
ANALYZE
。这是两种命令的一种方便的组合形式,
可以于例行的维护脚本。其处理细节可参考
ANALYZE
简单的
VACUUM
(不带
FULL
)简单地收回空间并使其可以被重用。这种形式的命令可以
和表的普通读写操作并行,因为它不会获得一个排他锁。但是,这种形式中额外的空间并
没有被还给操作系统(在大多数情况下),它仅仅被保留在同一个表中以备重用。它还允
许我们利用多个
CPU
来处理索引。 此功能称为
parallel vacuum
。要禁用此功能,可
以使用
PARALLEL
选项并将并行工作程序指定为零。
VACUUM FULL
将表的整个内容重写
到一个新的磁盘文件中,并且不包含额外的空间,这使得没有被使用的空间被还给操作系
统。这种形式的命令更慢并且在其被处理时要求在每个表上保持一个排他锁。
当选项列表被包围在圆括号中时,选项可以被写成任何顺序。如果没有圆括号,选项必须
严格按照上面所展示的顺序指定。
参数
FULL
选择“完全”清理,它可以收回更多空间,并且需要更长时间和表上的排他锁。这种方法还
需要额外的磁盘空间,因为它会创建该表的一个新拷贝,并且在操作完成之前都不会释放
旧的拷贝。通常这种方法只用于需要从表中收回数量庞大的空间时。
FREEZE
选择激进的元组“冻结”,指定
FREEZE
等价于参数
vacuum_freeze_min_age
vacuum_freeze_table_age
设置为
0
VACUUM
。当表被重写时总是会执行激进的冻
结,因此指定
FULL
时这个选项是多余的。
VERBOSE
为每个表打印一份详细的清理活动报告。
ANALYZE
更新优化器用以决定最有效执行一个查询的方法的统计信
DISABLE_PAGE_SKIPPING
通常,
VACUUM
于可映射跳过页面。已知所有元组都被冻结的面总是会被跳过
而那些所有元组对所有事务都可可能会被跳过(除执行的是激进的清理)。
此外,除在执行激进的清理时,一些可能会被跳过,这避免其他面完
成对其使用。这个选项禁用所有的跳过页面的行为,其图是只在可映射内容被怀疑
时使用,这种情况只有在件或者问题导致数据库损坏发生
SKIP_LOCKED
VACUUM
开始处理系时不等任何冲突锁被释放:如果系不能立即锁定而不
则跳过关系。请注意即使用此选项,
VACUUM
在打开关系的索引时可能阻塞
of 5
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜