步骤
-
停止 PostgreSQL 服务
# 停止服务 Stop-Service -Name "postgresql-x64-12" # 查看服务状态 Get-Service -Name "postgresql-x64-12"
-
移动 PGDATA 目录到新的位置,该操作可能需要 Administrator 权限
-
修改新的 PGDATA 目录权限,添加用户“Network Service”
-
修改注册表,更新 PostgreSQL 服务指向的 PGDATA 路径。注册表路径为:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicespgsql-some version,修改 “ImagePath” 的 “-D” 为新的 PGDATA 目录。最后检查下 PostgreSQL 服务指向的 PGDATA 执行路径是否为新的路径。
如果这里没有权限修改注册表,可以通过修改 PostgreSQL 服务的 command 执行路径
-
重新启动 PostgreSQL 服务
# 停止服务 Start-Service -Name "postgresql-x64-12" # 查看服务状态 Get-Service -Name "postgresql-x64-12"
参考
- Change the default PGDATA directory on Windows
- How to Migrate your PostgreSQL Data Directory in Windows
修改记录
- 2020-03-18 08:17 添加管理 PostgreSQL 服务的 PowerShell 脚本