View and manage PostgteSQL vacuums and autovacuums.
Project description
pg-vacuum
Managing PostgreSQL vacuums/autovacuums. This little tool will hopefully make managing the craziness that Postgres autovacuum is a little easier.
Features
Show current vacuums/autovacuums
It will show you how long the vacuums are running for and how much is left to do.
$ pgvacuum --database=postgres://localhost/db
+-------+--------------------------------------+----------------------------------+----------------+
| PID | Query | Started | Duration |
+-------+--------------------------------------+----------------------------------+----------------+
| 13368 | autovacuum: VACUUM public.drivers | 2020-04-16 14:19:17.289047+00:00 | 0:53:24.403651 |
| 80617 | autovacuum: VACUUM public.old_carts | 2020-04-16 14:16:17.484278+00:00 | 0:56:24.208420 |
| 92409 | autovacuum: VACUUM public.table_one_ | 2020-04-16 13:21:37.663504+00:00 | 1:51:04.029194 |
| 79790 | autovacuum: VACUUM public.devices | 2020-04-16 14:44:18.791010+00:00 | 0:28:22.901688 |
| 97037 | autovacuum: VACUUM public.users | 2020-04-16 12:21:10.163915+00:00 | 2:51:31.528783 |
+-------+--------------------------------------+----------------------------------+----------------+
Show progress of vacuums/autovacuums
$ pgvacuum --database=postgres://localhost/db --progress
+-------+------------+-------------------+----------+----------------------------------+----------------+
| PID | Table | Phase | Progress | Started | Duration |
+-------+------------+-------------------+----------+----------------------------------+----------------+
| 92409 | table_one_ | vacuuming indexes | 100 | 2020-04-16 13:21:37.663504+00:00 | 1:54:48.656212 |
| 97037 | users | vacuuming indexes | 100 | 2020-04-16 12:21:10.163915+00:00 | 2:55:16.155801 |
| 79790 | devices | vacuuming indexes | 100 | 2020-04-16 14:44:18.791010+00:00 | 0:32:07.528706 |
| 13368 | table_t | vacuuming indexes | 100 | 2020-04-16 14:19:17.289047+00:00 | 0:57:09.030669 |
| 80617 | old_carts | vacuuming indexes | 100 | 2020-04-16 14:16:17.484278+00:00 | 1:00:08.835438 |
+-------+------------+-------------------+----------+----------------------------------+----------------+
Enable/disable autovacuum on a table
# Disable the autovacuum on this table
$ pgvacuum --database=postgres://localhost/db --table=my_table --disable
# Enable the autovacuum on this table
$ pgvacuum --database=postgres://localhost/db --table=my_table --enable
Show table settings
Show what current settings are set on the table.
$ pgvacuum --database=postgres://localhost/db --table=my_table
+--------------------------------+-----------+
| Setting | Value |
+--------------------------------+-----------+
| autovacuum_freeze_max_age | 500000000 |
| autovacuum_vacuum_scale_factor | 0.02 |
| autovacuum_enabled | false |
+--------------------------------+-----------+
Show autovacuum settings
Show current database autovacuum settings.
pgvacuum --database=postgres://localhost/src --settings
+---------------------------------+-----------+
| Setting | Value |
+---------------------------------+-----------+
| autovacuum_vacuum_cost_delay | 2ms |
| autovacuum_vacuum_cost_limit | 200 |
| autovacuum_naptime | 1min |
| autovacuum_vacuum_scale_factor | 0.2 |
| autovacuum_analyze_scale_factor | 0.1 |
| autovacuum_freeze_max_age | 200000000 |
| track_counts | on |
+---------------------------------+-----------+
Terminate the autovacuums
Ok, you've had enough of it.
$ pgvacuum --database=postgres://localhost/db --kill=1234
where 1234
is the PID of the vacuum/autovacuum process.
Arguments
--database
(required), DSN orpostgres://
URL for the database,--progress
, show the progress of running vacuums,--table
, show settings for this table,--enable/disable
, to be used in conjunction with--table
to enable/disable autovacuum on it,--kill
, kill the autovacuum/vacuum with this PID,--settings
, show settings for the database.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pg-vacuum-0.1a10.tar.gz
(5.2 kB
view details)
Built Distribution
File details
Details for the file pg-vacuum-0.1a10.tar.gz
.
File metadata
- Download URL: pg-vacuum-0.1a10.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e6bcbd24af588d70658e52caa95f1efbafab4eee3aba7c1a3bb8d75290ab033 |
|
MD5 | a49af63dd59f18f828ba7e2c508a1419 |
|
BLAKE2b-256 | acb3d306e39b3ccf6b0bb737035f2414a705b663f1b776c59a9cbee81e9e92f3 |
File details
Details for the file pg_vacuum-0.1a10-py3-none-any.whl
.
File metadata
- Download URL: pg_vacuum-0.1a10-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b708f1d030f960724280c2e4b72a73a92856e2044151e325f0336e186a7f59e7 |
|
MD5 | b4fcc3c8f87467b6a4c8b24cb8f1abab |
|
BLAKE2b-256 | 65b4fe62fa8c9b3dce76cbced9689bfd5308b5382951f5d8214165ea12016898 |