0
点赞
收藏
分享

微信扫一扫

PG如何进行vacuum freeze

vacuum free能有效将事务年龄过大的问题解决,但是这个非常耗时间,这个时候最方便的就是开启screen进行vacuum freeze

开启screen窗口

$ screen -dmS your_session_name    #your_session_name 自定义 可以直接使用 —S


-d <作业名称>  将指定的screen作业离线。
-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-S <作业名称>  指定screen作业的名称。


查看窗口

$ screen -ls


进入窗口

网上查的根本开始没写这一步,所以导致我们不知道是否就使用了screen这个功能,所以这个特别重要,我们要进去执行命令
$ screen -r pid.your_session_name


执行命令


退出screen

按住Ctrl+A不松手再按 D


查看执行状态

进来看看咋样了
$ screen -r pid.your_session_name


删除screen

kill -9 pid


举个例子

screen -dmS vfree
screen -ls
There are screens on:
75468.vfree (Detached)
438093.vacuum (Detached)
2 Sockets in /var/run/screen/S-telepg.

screen -r 75468.vfree
psql -p**** -Uroot -dpostgres -h ***.***.***.****(这里屏蔽端口和IP)
Password for user root:
psql (12.7)
Type "help" for help.

postgres=# \c db1
You are now connected to database "db1" as user "root".
db1=# vacuum freeze;
[detached from 75468.vfree]
screen -ls
There are screens on:
75468.vfree (Detached)
438093.vacuum (Detached)
2 Sockets in /var/run/screen/S-telepg.

screen -r 75468.vfree
psql -p**** -Uroot -dpostgres -h ***.***.***.****(这里屏蔽端口和IP)
Password for user root:
psql (12.7)
Type "help" for help.

postgres=# \c db1
You are now connected to database "db1" as user "root".
db1=# vacuum freeze;
[detached from 75468.vfree]

举报

相关推荐

0 条评论