You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows 10环境下PostgreSQL数据库迁移:修改数据目录路径方法

Windows 10下修改PostgreSQL服务数据目录的完整步骤

前置准备

  • 停止PostgreSQL服务:按Win+R输入services.msc,找到对应版本的PostgreSQL服务(如PostgreSQL 15 Server),右键选择「停止」。
  • 完整复制原数据目录到新磁盘路径:比如从C:\Program Files\PostgreSQL\15\data复制到D:\PostgreSQL\data,确保所有文件、子目录都复制到位,保留原权限。

修改服务启动参数(解决-D参数不可编辑问题)

服务属性里的启动参数无法直接编辑,可通过以下两种方式修改:

方法一:使用sc命令(推荐)

  1. 以管理员身份打开命令提示符(CMD)或PowerShell。
  2. 查看当前服务配置,确认原启动参数:
    sc qc "PostgreSQL 15 Server"
    
    (将服务名称替换为你实际的PostgreSQL服务名,版本不同名称会有差异)
  3. 执行修改命令,替换binPath中的-D参数路径:
    sc config "PostgreSQL 15 Server" binPath= "\"C:\Program Files\PostgreSQL\15\bin\pg_ctl.exe\" runservice -N \"PostgreSQL 15 Server\" -D \"D:\PostgreSQL\data\" -w"
    
    注意:
    • binPath=后面必须跟一个空格
    • 路径中的引号需要用\"转义
    • 替换命令中的pg_ctl.exe路径和新数据目录路径为你实际的路径

方法二:修改注册表

  1. 按Win+R输入regedit打开注册表编辑器。
  2. 导航到注册表路径:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PostgreSQL 15 Server
    
    (替换服务名称为实际名称)
  3. 找到ImagePath键值,双击编辑,将其中-D后的原数据目录路径替换为新路径,确保引号格式正确。

验证与收尾

  1. 再次执行sc qc "PostgreSQL 15 Server",确认binPath中的-D参数已指向新路径。
  2. 回到服务管理器,启动PostgreSQL服务。
  3. 连接数据库,执行SQL命令验证:
    SHOW data_directory;
    
    输出应为新的数据目录路径。
  4. 确认服务正常运行、数据库可正常访问后,再删除原数据目录(可选)。

内容的提问来源于stack exchange,提问作者Bud

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 09:49:50