重置系统后,Postgresql不用重装

系统重置后原来的程序目录还在,但是有的用不了了,尤其是原来作为系统服务的程序,我原来安装过postgresql,数据data也都在,但是从系统服务里面看不到了,直接运行启动不了,然后就按照下面的办法重新注册了一下服务就好了。

执行前请注意 :此方法要求你的数据目录(data文件夹)是完整且已被初始化 的。如果data目录为空,服务会注册成功但无法启动。通常正常安装过的PostgreSQL,其data目录都是就绪状态。

  1. 管理员身份 打开命令提示符(在搜索框输入cmd,然后右键选择"以管理员身份运行"),这一步很关键,否则注册可能失败。

  2. 同样,先进入bin目录:

bash 复制代码
cd /d "C:\Program Files\PostgreSQL\版本号\bin"
  1. 执行注册命令。这是一个完整的示例,你可以根据需要调整
bash 复制代码
pg_ctl register -N PostgreSQL -D "C:\Program Files\PostgreSQL\版本号\data" -S auto -o "-p 5432"

命令参数说明:

  • -N PostgreSQL:指定服务的名称,你可以自定义,比如 -N MyPostgresDB

  • -D "你的data路径":指定数据目录的位置。

  • -S auto:设置服务为"自动"启动(开机自启)。如果希望手动启动,可以改为 -S demand

  • -o "-p 5432":指定服务启动时的端口号,默认为5432。如果你的端口不是这个,请修改。

注册成功后,系统会提示操作完成。

现在,你就可以像操作其他Windows服务一样来管理它了:

bash 复制代码
# 启动服务
net start PostgreSQL

# 停止服务
net stop PostgreSQL

你也可以在任务管理器的"服务"选项卡中找到你刚刚注册的服务名(如PostgreSQL),并进行启动、停止或设置为开机自启。

相关推荐
剑之所向1 小时前
.NET 官方`System.Threading.Channels`
前端·javascript·数据库
词却1 小时前
数据库基础:DQL 数据查询语言
数据库·oracle
昌原的儿子LEO3 小时前
Linux IO多路复用与SQLite数据库核心知识点总结
linux·数据库·oracle
山岚的运维笔记3 小时前
mysql 专业笔记 -- 第 8 章:使用变量
运维·数据库·笔记·后端·学习·mysql·dba
聚美智数4 小时前
网安查询-备案查询-网络安全查询API接口介绍
网络·数据库·web安全
坐吃山猪4 小时前
【多线程】Semaphore使用
java·数据库·oracle·多线程
数智启示录4 小时前
PostgreSQL 内存调优实战(第 12 篇):work_mem 只调大 64 倍,峰值为什么远不止 64 倍
运维·数据库·经验分享·postgresql·面试
姜太小白5 小时前
【Oracle】记排查sh脚本调用SQL执行卡顿的排查总结
数据库·sql·oracle
bgy66665 小时前
MariaDB 数据库 基础详解
数据库·mariadb
自动化监测Learner5 小时前
QGIS 把geojson数据导入 PostgreSQL/PostGIS 的完整流程
数据库·postgresql