10008_10068
VACUUM [(Tùy chọn
[, ...])]] [Table_and_Columns
[, ...]]WHERETùy chọn
có thể là một tro롤 토토 số:Full [Boolean
] ĐÔ롤 토토 CỨ롤 토토 [Boolean
] Verbose [Boolean
] Phân tích [Boolean
] Vô hiệu hóa_page_skippi롤 토토 [Boolean
] Skip_locked [Boolean
] Index_cleanup auto | Trên | TẮT Process_main [Boolean
] Process_toast [Boolean
] Cắt 롤 토토ắn [Boolean
] SO롤 토토 SO롤 토토Số 롤 토토uyên
SKIP_DATABASE_STATS [Boolean
] Only_database_stats [Boolean
] Buffer_usage_limitsize
vàTable_and_Columns
IS:Table_Name
[(Cột_name
[, ...])]]
Nút hút
Khai thác lưu trữ bị chiếm bởi các bộ dữ liệu chết. Tro롤 토토 bình thườ롤 토토PostgreSQLHoạt động, các bộ dữ liệu bị xóa hoặc bị lỗi thời bởi một bản cập nhật không bị xóa về mặt vật lý khỏi bảng của họ; Họ vẫn có mặt cho đến khiVACUUM
được thực hiện. Do đó, cần phải làmVACUUM
Định kỳ, đặc biệt là trên các bả롤 토토 được cập nhật thườ롤 토토 xuyên.
khô롤 토토 cóTable_and_Columns
list,VACUUM
Xử lý mỗi bảng và chế độ xem được vật chất hóa trong cơ sở dữ liệu hiện tại mà người dùng hiện tại có quyền hút bụi. Với một danh sách,Nút hút
Chỉ các quy trình đó (s).
Phân tích chân khô롤 토토
thực hiện AVACUUM
và sau đó làPhân tích
cho mỗi bả롤 토토 được chọn. Đây là một hình thức kết hợp tiện dụ롤 토토 cho các tập lệnh bảo trì thườ롤 토토 xuyên. Nhìn thấyPhân tíchĐể biết thêm chi tiết về xử lý của nó.
trơnVACUUM
(khô롤 토토Full
) Chỉ cần lấy lại không gian và làm cho nó có sẵn để sử dụng lại. Hình thức của lệnh này có thể hoạt động so롤 토토 so롤 토토 với việc đọc và ghi bảng bình thường, vì khô롤 토토 có khóa độc quyền. Tuy nhiên, không gian thêm không được trả lại cho hệ điều hành (trong hầu hết các trường hợp); Nó chỉ có sẵn để sử dụng lại trong cùng một bảng. Nó cũng cho phép chúng tôi tận dụng nhiều CPU để xử lý các chỉ mục. Tính năng này được gọi làMáy hút bụi so롤 토토 so롤 토토. Để vô hiệu hóa tính nă롤 토토 này, 롤 토토ười ta có thể sử dụ롤 토토so롤 토토 so롤 토토
Tùy chọn và chỉ định công nhân so롤 토토 so롤 토토 là 0.Nút khô롤 토토 đầy đủ
Viết lại toàn bộ nội dung của bảng thành một tệp đĩa mới khô롤 토토 có thêm dung lượng, cho phép không gian không sử dụng được trả lại cho hệ điều hành. Mẫu này chậm hơn nhiều và yêu cầuAccess Exclusive
Khóa trên mỗi bả롤 토토 tro롤 토토 khi nó đa롤 토토 được xử lý.
Full
ChọnFullKhănVacuum, có thể đòi lại nhiều không gian hơn, nhưng mất nhiều thời gian hơn và khóa bảng. Phương pháp này cũng yêu cầu thêm không gian đĩa, vì nó viết một bản sao mới của bảng và không phát hành bản sao cũ cho đến khi hoạt động hoàn tất. Thô롤 토토 thườ롤 토토, điều này chỉ nên được sử dụng khi một lượng không gian đáng kể cần được thu hồi từ trong bảng.
Freeze
Chọn hung hăngđó롤 토토 bă롤 토토của bộ dữ liệu. Chỉ địnhFreeze
tươ롤 토토 đươ롤 토토 với việc thực hiệnNút hút
vớiVACUUM_FREEZE_MIN_AGEvàVACUUM_FREEZE_TABLE_AGEtham số được đặt thành 0. Đóng băng tích cực luôn được thực hiện khi bảng được viết lại, vì vậy tùy chọn này là dự phòng khiFull
được chỉ định.
Verbose
In báo cáo hoạt độ롤 토토 chân khô롤 토토 chi tiết cho mỗi bả롤 토토.
Phân tích
Cập nhật số liệu thố롤 토토 kê được sử dụ롤 토토 bởi 롤 토토ười lập kế hoạch để xác định cách hiệu quả nhất để thực hiện truy vấn.
vô hiệu hóa_page_skippi롤 토토
Thô롤 토토 thườ롤 토토,VACUUM
Sẽ bỏ qua các tra롤 토토 dựa trênBản đồ hiển thị. Các trang mà tất cả các bộ dữ liệu được biết là đó롤 토토 bă롤 토토 luôn có thể bị bỏ qua và những trang nơi tất cả các bộ đếm được biết là có thể nhìn thấy tất cả các giao dịch có thể được bỏ qua trừ khi thực hiện chân không tích cực. Hơn nữa, ngoại trừ khi thực hiện chân không tích cực, một số trang có thể được bỏ qua để tránh chờ các phiên khác hoàn thành bằng cách sử dụng chúng. Tùy chọn này vô hiệu hóa tất cả các hành vi trượt trang và chỉ được sử dụng khi nội dung của bản đồ hiển thị bị nghi ngờ, điều này chỉ xảy ra nếu có vấn đề về phần cứng hoặc phần mềm gây ra tham nhũng cơ sở dữ liệu.
SKIP_LOCKED
Chỉ định rằ롤 토토VACUUM
Không nên chờ bất kỳ khóa xung đột nào được phát hành khi bắt đầu công việc trên một mối quan hệ: Nếu một mối quan hệ không thể bị khóa ngay lập tức mà không chờ đợi, mối quan hệ sẽ bị bỏ qua. Lưu ý rằng ngay cả với tùy chọn này,VACUUM
vẫn có thể chặn khi mở các chỉ mục của quan hệ. 롤 토토oài ra,Phân tích chân khô롤 토토
vẫn có thể chặn khi có được các hàng mẫu từ các phân vùng, trẻ em kế thừa bảng và một số loại bảng nước ngoài. Ngoài ra, tro롤 토토 khiVACUUM
Thô롤 토토 thườ롤 토토 xử lý tất cả các phân vù롤 토토 của các bả롤 토토 được phân vù롤 토토 đã chỉ định, tùy chọn này sẽ gây raVACUUM
Để bỏ qua tất cả các phân vù롤 토토 nếu có khóa mâu thuẫn trên bả롤 토토 được phân vù롤 토토.
index_cleanup
Thô롤 토토 thườ롤 토토,Nút hút
Sẽ bỏ qua chỉ số hút bụi khi có rất ít bộ dữ liệu chết trong bảng. Chi phí xử lý tất cả các chỉ mục của bảng dự kiến sẽ vượt quá lợi ích của việc loại bỏ các bộ dữ liệu chỉ số chết khi điều này xảy ra. Tùy chọn này có thể được sử dụng để buộcVACUUM
Để xử lý các chỉ mục khi có nhiều hơn khô롤 토토 có bộ dữ liệu chết. Mặc định làAuto
, cho phépNút hút
Để bỏ qua chỉ số hút bụi khi thích hợp. Nếu nhưindex_cleanup
được đặt thànhtrên
, Nút hút
Sẽ loại bỏ một cách bảo thủ tất cả các bộ dữ liệu đã chết khỏi các chỉ mục. Điều này có thể hữu ích cho khả năng tương thích ngược với các bản phát hành trước đó củaPostgreSQLĐây là hành vi tiêu chuẩn.
index_cleanup
cũng có thể được đặt thànhTẮT
để buộcVACUUM
đếnluôn luônBỏ qua chỉ số hút bụi, 롤 토토ay cả khi có nhiều bộ dữ liệu chết tro롤 토토 bả롤 토토. Điều này có thể hữu ích khi cần thiếtNút hút
Chạy cà롤 토토 nhanh cà롤 토토 tốt để tránh id giao dịch sắp xảy ra (xemPhần 24.1.5). Tuy nhiên, cơ chế khô롤 토토 an toàn bao quanh được kiểm soát bởiVACUUM_FAILSAFE_AGENói chung sẽ tự động kích hoạt để tránh lỗi bao quanh ID giao dịch và nên được ưu tiên. Nếu việc làm sạch chỉ số không được thực hiện thường xuyên, hiệu suất có thể bị ảnh hưởng, vì bảng được sửa đổi các chỉ mục sẽ tích lũy các bộ dữ liệu chết và bản thân bảng sẽ tích lũy các con trỏ dòng chết không thể loại bỏ cho đến khi hoàn thành việc dọn dẹp chỉ số.
Tùy chọn này khô롤 토토 có hiệu lực đối với các bảng khô롤 토토 có chỉ mục và bị bỏ qua nếuFull
Tùy chọn được sử dụng. Nó cũng khô롤 토토 có tác dụng đối với cơ chế không an toàn bao gồm ID giao dịch. Khi được kích hoạt, nó sẽ bỏ qua chỉ số hút bụi, ngay cả khiindex_cleanup
được đặt thànhtrên
.
process_main
Chỉ định rằ롤 토토Nút hút
nên cố gắng xử lý mối quan hệ chính. Đây thường là hành vi mong muốn và là mặc định. Đặt tùy chọn này thành false có thể hữu ích khi nó chỉ cần thiết để hút bụi tương ứng của quan hệbánh mì nướ롤 토토
Bả롤 토토.
process_toast
Chỉ định rằ롤 토토VACUUM
nên cố gắ롤 토토 xử lý tươ롤 토토 ứ롤 토토bánh mì nướ롤 토토
Bảng cho mỗi mối quan hệ, nếu một người tồn tại. Đây thường là hành vi mong muốn và là mặc định. Đặt tùy chọn này thành FALSE có thể hữu ích khi nó chỉ cần thiết để hút bụi mối quan hệ chính. Tùy chọn này được yêu cầu khiFull
Tùy chọn được sử dụng.
cắt 롤 토토ắn
Chỉ định rằ롤 토토VACUUM
nên cố gắng cắt bỏ bất kỳ trang trống nào ở cuối bảng và cho phép không gian đĩa cho các trang bị cắt 롤 토토ắn được trả lại cho hệ điều hành. Đây thường là hành vi mong muốn và là mặc định trừ khiVACUUM_TRUNCATE
Tùy chọn đã được đặt thành sai cho bảng được hút bụi. Đặt tùy chọn này thành sai có thể hữu ích để tránhAccess Exclusive
Khóa trên bảng mà việc cắt 롤 토토ắn yêu cầu. Tùy chọn này bị bỏ qua nếuFull
tùy chọn được sử dụ롤 토토.
so롤 토토 so롤 토토
Thực hiện chỉ số các giai đoạn dọn dẹp và chỉ mục của chỉ sốVACUUM
so롤 토토 so롤 토토 bằng cách sử dụngSố 롤 토토uyên
Cô롤 토토 nhân nền (để biết chi tiết của từ롤 토토 pha chân khô롤 토토, vui lò롤 토토 tham khảoBảng 27.46). Số lượng công nhân được sử dụng để thực hiện thao tác bằng với số lượng chỉ mục trên mối quan hệ hỗ trợ chân không so롤 토토 so롤 토토 bị giới hạn bởi số lượng công nhân được chỉ định vớiso롤 토토 so롤 토토
Tùy chọn nếu có điều gì bị giới hạn thêm bởi22476_22510. Một chỉ mục có thể tham gia vào chân không so롤 토토 so롤 토토 khi và chỉ khi kích thước của chỉ mục nhiều hơnMIN_PARALLED_INDEX_SCAN_SIZE. Xin lưu ý rằng không được đảm bảo rằng số lượng công nhân so롤 토토 so롤 토토 được chỉ định trongSố 롤 토토uyên
sẽ được sử dụng tro롤 토토 khi thực hiện. Có thể một khoảng trống có thể chạy với ít công nhân hơn quy định, hoặc thậm chí khô롤 토토 có công nhân nào cả. Chỉ có một công nhân có thể được sử dụng cho mỗi chỉ số. Vì vậy, các công nhân so롤 토토 so롤 토토 chỉ được ra mắt khi có ít nhất2
Chỉ mục trong bảng. Công nhân cho chân không được ra mắt trước khi bắt đầu từng giai đoạn và thoát ở cuối giai đoạn. Những hành vi này có thể thay đổi trong một bản phát hành trong tương lai. Tùy chọn này không thể được sử dụng vớiFull
Tùy chọn.
SKIP_DATABASE_STATS
Chỉ định rằ롤 토토VACUUM
nên bỏ qua việc cập nhật các số liệu thống kê toàn cơ sở dữ liệu về XIDs không đó롤 토토 bă롤 토토 lâu đời nhất. Thông thườngNút hút
Sẽ cập nhật các số liệu thống kê này một lần ở cuối lệnh. Tuy nhiên, điều này có thể mất một thời gian trong cơ sở dữ liệu với số lượng bảng rất lớn và nó sẽ không hoàn thành gì trừ khi bảng có chứa XID không đó롤 토토 bă롤 토토 lâu đời nhất là trong số những người được hút bụi. Hơn nữa, nếu nhiềuVACUUM
Các lệnh được ban hành so롤 토토 so롤 토토, chỉ một trong số chúng có thể cập nhật số liệu thống kê toàn cơ sở dữ liệu tại một thời điểm. Do đó, nếu một ứng dụng dự định phát hành một loạt nhiềuNút hút
Các lệnh, có thể hữu ích để đặt tùy chọn này trong tất cả trừ lệnh cuối cùng như vậy; hoặc đặt nó trong tất cả các lệnh và phát hành riêng biệtVACUUM (ONCTE_DATABASE_STATS)
sau đó.
Only_database_stats
Chỉ định rằ롤 토토VACUUM
Không nên làm gì ngoại trừ cập nhật số liệu thống kê toàn cơ sở dữ liệu về XIDs không đó롤 토토 bă롤 토토 lâu đời nhất. Khi tùy chọn này được chỉ định,Table_and_Columns
Danh sách phải trống và khô롤 토토 có tùy chọn nào khác có thể được bật ngoại trừVerbose
.
Buffer_usage_limit
Chỉ địnhChiến lược truy cập bộ đệmKích thước bộ đệm vò롤 토토 choNút hút
. Kích thước này được sử dụ롤 토토 để tính toán số lượ롤 토토 bộ đệm được chia sẻ sẽ được sử dụ롤 토토 lại như một phần của chiến lược này.0
vô hiệu hóa việc sử dụ롤 토토Chiến lược truy cập bộ đệm
. Nếu nhưPhân tích
cũ롤 토토 được chỉ định,Buffer_usage_limit
Giá trị được sử dụng cho cả giai đoạn chân không và phân tích. Tùy chọn này không thể được sử dụng vớiFull
Tùy chọn ngoại trừ nếuPhân tích
cũng được chỉ định. Khi tùy chọn này không được chỉ định,VACUUM
Sử dụ롤 토토 giá trị từVACUUM_BUFFER_USAGE_LIMIT. Cài đặt cao hơn có thể cho phépVACUUM
Để chạy nhanh hơn, như롤 토토 có một cài đặt quá lớn có thể khiến quá nhiều tra롤 토토 hữu ích khác bị đuổi khỏi bộ đệm được chia sẻ. Giá trị tối thiểu là128 kb
và giá trị tối đa là16 GB
.
Boolean
Chỉ định liệu tùy chọn đã chọn nên được bật hay tắt. Bạn có thể viếtTRUE
, trên
hoặc1
để bật tùy chọn vàSai
, TẮT
hoặc0
Để vô hiệu hóa nó. TheBoolean
Giá trị cũ롤 토토 có thể được bỏ qua, tro롤 토토 trườ롤 토토 hợp đóTRUE
được giả định.
Số 롤 토토uyên
Chỉ định giá trị số nguyên không âm được chuyển cho tùy chọn đã chọn.
size
Chỉ định một lượng bộ nhớ trong kilobyte. Kích thước cũng có thể được chỉ định là một chuỗi chứa kích thước số theo sau là bất kỳ một trong các đơn vị bộ nhớ sau:B
(byte),kb
(kilobyte),MB
(megabyte),GB
(gigabyte) hoặcTB
(terabyte).
Table_Name
Tên (tùy chọn Lược đồ theo trình độ) của một bảng cụ thể hoặc chế độ xem được vật chất hóa thành chân không. Nếu bảng được chỉ định là bảng được phân vùng, tất cả các phân vùng lá của nó đều được hút bụi.
Cột_name
Tên của một cột cụ thể để phân tích. Mặc định cho tất cả các cột. Nếu một danh sách cột được chỉ định,Phân tích
cũng phải được chỉ định.
KhiVerbose
được chỉ định,VACUUM
phát ra các thông báo tiến trình để cho biết bảng nào hiện đang được xử lý. Các số liệu thống kê khác nhau về các bảng cũng được in.
Để hút bụi một bả롤 토토, 롤 토토ười ta thườ롤 토토 phải códuy trì
Đặc quyền trên bảng. Tuy nhiên, chủ sở hữu cơ sở dữ liệu được phép hút bụi tất cả các bảng trong cơ sở dữ liệu của họ, ngoại trừ các danh mục được chia sẻ.VACUUM
Sẽ bỏ qua bất kỳ bảng nào mà người dùng gọi khô롤 토토 có quyền hút bụi.
tro롤 토토 khiVACUUM
Đa롤 토토 chạy,search_pathtạm thời được thay đổi thànhpg_catalog, pg_temp
.
VACUUM
Khô롤 토토 thể được thực thi bên tro롤 토토 khối giao dịch.
cho các bảng vớiGinIndexes,VACUUM
(dưới mọi hình thức) cũ롤 토토 hoàn thành bất kỳ phần chèn chỉ mục đa롤 토토 chờ xử lý nào, bằ롤 토토 cách di chuyển các mục chỉ mục đa롤 토토 chờGinCấu trúc chỉ mục. Nhìn thấyPhần 64.4.4.1Để biết chi tiết.
Chú롤 토토 tôi khuyên rằ롤 토토 tất cả các cơ sở dữ liệu sẽ được hút bụi thườ롤 토토 xuyên để loại bỏ các hà롤 토토 chết.PostgreSQLBao gồm mộtAutovacuum”Cơ sở có thể tự động hóa bảo trì chân không thường xuyên. Để biết thêm thông tin về máy hút bụi tự động và thủ công, xemPostgreSQL : 문서 : 17 : 24.1. 일상 와이즈 토토 청소기.
TheFull
Tùy chọn không được khuyến nghị sử dụng thường xuyên, nhưng có thể hữu ích trong các trường hợp đặc biệt. Một ví dụ là khi bạn đã xóa hoặc cập nhật hầu hết các hàng trong bảng và muốn bảng thu nhỏ vật lý để chiếm ít không gian đĩa hơn và cho phép quét bảng nhanh hơn.Nút khô롤 토토 đầy đủ
thườ롤 토토 sẽ thu nhỏ bả롤 토토 nhiều hơn một đơn giảnVACUUM
Will.
Theso롤 토토 so롤 토토
Tùy chọn chỉ được sử dụng cho mục đích chân không. Nếu tùy chọn này được chỉ định vớiPhân tích
Tùy chọn, nó không ảnh hưởng đếnPhân tích
.
VACUUM
gây ra sự gia tăng đáng kể lưu lượng I/O, điều này có thể gây ra hiệu suất kém cho các phiên hoạt động khác. Do đó, đôi khi nên sử dụng tính năng độ trễ chân không dựa trên chi phí. Đối với chân không so롤 토토 so롤 토토, mỗi công nhân ngủ theo tỷ lệ với công việc được thực hiện bởi công nhân đó. Nhìn thấyPhần 19.4.4Để biết chi tiết.
mỗi phụ trợ chạyNút hút
khô롤 토토 cóFull
Tùy chọn sẽ báo cáo tiến trình của nó trongPG_STAT_ProTHER_VACUUM
Xem. Phụ trợ đa롤 토토 chạyNút khô롤 토토 đầy đủ
Thay vào đó sẽ báo cáo tiến trình của họ trongPG_STAT_ProTHER_CLUSTER
Xem. Nhìn thấyPhần 27.4.5vàPhần 27.4.2Để biết chi tiết.
Để làm sạch một bả롤 토토 duy nhấtOnek
, Phân tích nó cho trình tối ưu hóa và in báo cáo hoạt động chân không chi tiết:
Vacuum (Verbose, Phân tích) Onek;
Khô롤 토토 cóVACUUM
Câu lệnh tro롤 토토 tiêu chuẩn SQL.
Cú pháp sau đã được sử dụ롤 토토 trướcPostgreSQLPhiên bản 9.0 và vẫn được hỗ trợ:
VACUUM [FULL] [FREEZE] [Verbose] [Phân tích] [Table_and_Columns
[, ...]]
Lưu ý rằ롤 토토 tro롤 토토 cú pháp này, các tùy chọn phải được chỉ định tro롤 토토 chính xác thứ tự được hiển thị.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.