📅  最后修改于: 2023-12-03 14:45:08.911000             🧑  作者: Mango
pg_restore
是一个 PostgreSQL 的工具,用于恢复备份文件到 PostgreSQL 数据库。在使用 pg_restore
工具恢复备份文件时,有时可能需要挂起该操作并且中途再次恢复操作,比如恢复大型备份文件或者在网络较慢的情况下。
使用 pg_restore
恢复备份文件时可以加上 --jobs
参数,该参数可以指定 pg_restore
工具使用的并发数。将该参数设置为 1
可以保证在恢复备份文件时不会使用并发。
pg_restore --jobs=1 mybackupfile.dump
如果备份文件较大,你可以通过按下 Ctrl+Z
将 pg_restore
挂起并将其放在后台暂时停止操作。
当然,如果你有多个 pg_restore
工作正在进行,你需要挑选一个你要重启的 pg_restore
进程。你可以使用 jobs
命令查看后台所有挂起的进程。
jobs -l
该命令将输出一个列表,其中包含每个挂起的作业的编号和状态,如下所示:
[1]+ 12345 Suspended pg_restore --jobs=1 mybackupfile.dump
上面的 1
是该作业的编号,12345
是 pg_restore
的进程ID,Suspended
表示该作业处于挂起状态,最后一列是该挂起作业的命令行。
要重启该作业,你可以使用 fg
命令重新将其放回前台。
fg 1
这将重新启动 ID 为 1 的作业。
pg_restore
是一个非常有用的 PostgreSQL 工具,这个工具非常适合在恢复备份文件时使用。在备份文件较大或者在网络速度较慢的情况下,你可能需要暂停并重新启动 pg_restore
。使用 --jobs
参数设置并发数,按下 Ctrl+Z
挂起 pg_restore
并使用 jobs
和 fg
命令重新启动该作业。