自从2020年底开始接触 PostgreSQL 以来就喜欢上了这个数据库,个人感觉比 MySQL 好用,多表联合查询性能好很多,同时也不存在 SQLServer 的版权授权费用问题。搭配 .NET 开发很好用,目前手里的项目全部都是采用 PostgreSQL 进行数据支撑的。

本文主要说一下在 Windows 系统中安装 PostgreSQL 的方法,我这里没有采用 exe 安装包的形式去安装,EDB 发布的那个 exe 安装包形式的对于中文环境数据库的排序规则设定有问题,所以我采用了官方 ZIP 压缩包形式解压后手动安装的形式。

先说一下安装包的获取方式,访问 https://www.postgresql.org/download/windows/

然后点击下载页面的 zip archive 就可以进入下载地址 https://www.enterprisedb.com/download-postgresql-binaries

目前最新稳定版是 PostgreSQL 14.5 点击就可以获取到我们所需要的 zip 压缩包了

这个压缩包原版总共有 280M 大小,但是其实里面有很多东西我们用不到,所以我这里经过和 exe 安装版的进行对比分析之后,整理了一个清理方案

默认其中包含有这些文件夹,我箭头标记的 doc,  pgAdmin 4 ,  StackBuilder ,symbols 四个文件夹可以直接删除,然后进入 bin 目录,再删掉 stackbuilder 相关的一些文件即可,我贴了一个 bat 命令,大家可以直接在 bin 文件夹中执行下面的命令,对相关文件进行删除。

  1. del stackbuilder.exe
  2. del libcurl.dll
  3. del wxbase313u_vc_x64_custom.dll
  4. del wxbase313u_xml_vc_x64_custom.dll
  5. del wxbase313ud_net_vc_x64_custom.dll
  6. del wxmsw313u_adv_vc_x64_custom.dll
  7. del wxmsw313u_core_vc_x64_custom.dll
  8. del wxmsw313ud_aui_vc_x64_custom.dll
  9. del wxmsw313ud_html_vc_x64_custom.dll
  10. del wxmsw313ud_xrc_vc_x64_custom.dll

执行完清理方案之后,整个 PostgreSQL 的文件夹就只剩下 107M 大小了,压缩为 zip 格式之后只有 34.5M

大家可以把清理好之后的文件做一个压缩包各自保存起来,以后换别的电脑安装 PostgreSQL 的时候可以直接用自己弄好的这个压缩包。

接下来开始说如何进行安装 PostgreSQL,文件都准备好之后,首先把文件夹移动到准备安装的位置,我这里移动到了 D:\Software\PostgreSQL 路径

启动 cmd 进入我们的路径 D:\Software\PostgreSQL 切入到 bin 文件夹中

  1. cmd
  2. d:
  3. cd D:\Software\PostgreSQL
  4. cd bin

我们的安装,卸载命令都需要在 bin 文件夹中执行

首先初始化实例

  1. initdb -D "D:\Software\PostgreSQL\data" -E UTF8 -U postgres --locale="Chinese (Simplified)_China.936" --lc-messages="Chinese_China.936" -A scram-sha-256 -W

在 windows 环境下我们采用 UTF8 编码 Chinese (Simplified)_China.936 排序规则,账户加密方式采用 scram-sha-256,数据库的存放位置指定为 D:\Software\PostgreSQL\data

初始化过程中需要输入两次 超级用户口令,用于设置 postgres 用户的密码

数据库初始化完成之后,就可以选择安装为 Windows 服务了,注册服务命令如下

  1. pg_ctl.exe register -D "D:\Software\PostgreSQL\data" -PostgreSQL

接下来我们调整一下 PostgreSQL 的配置信息,默认情况下 PostgreSQL 数据库只能本机连接,我们调整为监听所有 IP 开启外部连接的功能。

在 D:\Software\PostgreSQL\data 文件夹中找到 postgresql.conf

打开 postgresql.conf 文件,找到

  1. #listen_addresses = 'localhost'

然后删除掉前面的 # 修改为

  1. listen_addresses = '*'

保存后关闭文件。

然后还是在 D:\Software\PostgreSQL\data 文件夹中找到 pg_hba.conf 打开后直接情况里面原来的内容,用如下内容进行替换

  1. host all all 0.0.0.0/0 scram-sha-256
  2. host all all ::/0 scram-sha-256

保存后关闭即可,这样就运行了所有的 ipv4 和 ipv6 地址来连接我们的 PostgreSQL 数据库了,因为本文旨在说明 PostgreSQL 的安装,所以对于其他的一些配置不展开进行说明。

当配置文件调整之后我们就可以启动我们安装好的 PostgreSQL 了,只要在 cmd 输入

  1. net start PostgreSQL

也可以通过 Windows 服务来控制启动和停止

启动之后就可以使用连接工具去连接数据库了

如果想要卸载 PostgreSQL 则需要先停止 服务,

  1. net stop PostgreSQL

然后执行卸载命令即可

执行卸载命令也需要向我们开始的操作一样进入 PostgreSQL 路径的 bin 目录,然后执行

  1. pg_ctl.exe unregister -PostgreSQL

这样就卸载完成了,然后直接去 D:\Software 删掉 PostgreSQL 文件夹就可以了。

至此 Windows 系统 PostgreSQL 手工安装配置方法 就讲解完了,有任何不明白的,可以在文章下面评论或者私信我,欢迎大家积极的讨论交流,有兴趣的朋友可以关注我目前在维护的一个 .NET 基础框架项目,项目地址如下

Windows 系统 PostgreSQL 手工安装配置方法的更多相关文章

  1. Windows上PostgreSQL安装配置教程

    Windows上PostgreSQL安装配置教程 这篇文章主要为大家详细介绍了Windows上PostgreSQL安装配置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 PostgreSQL的 ...

  2. 在Linux下访问Windows共享目录的配置方法

    在Linux下访问Windows共享目录的配置方法 1.在Windows上设置一个共享目录 如:将d:\RedHat_disk设置为共享目录 2.在Windows上创建一个用户,如tommy,密码11 ...

  3. Windows server 2003 伪静态配置方法

    Windows server 2003 伪静态配置方法   先我们下载Rewrite伪静态组件到服务器,然后解压到D:\Rewrite下,解压后如下图: 提示:ReWrite组件所在目录要有网站所有者 ...

  4. Windows系统通用安全配置基线

    一:共享账号检查 配置名称:账号分配检查,避免共享账号存在 配置要求: 1.系统需按照实际用户分配账号: 2.根据系统的使用需求,设定不同的账户和账户组,包括管理员用户,数据库用户,审计用户,来宾用户 ...

  5. windows环境下memcache配置方法 详细篇

    将memcache服务器安装包解压到C:\memcached文件夹后,使用cmd命令窗口安装. 1>开始>运行:CMD(确定) 2>cd C:\memcached(回车) 3> ...

  6. Windows系统Git安装配置

    Git的安装 Git是一个开源的分布式的版本控制软件,是Linus Torvalds 为了方便开源贡献者协同开发和管理 Linux 内核开发替代BitKe而开发的. 打开git官网的下载地址:http ...

  7. Cmder命令行工具在Windows系统中的配置

    一.Cmder简介 Cmder:一款用于Windows系统中,可增强传统cmd命令行工具的控制台模拟器(类似于Linux系统中的终端控制窗口) 特点: 无需安装,解压即用 可使用较多Linux命令,如 ...

  8. 这些混账的开源库在煞笔Windows系统上的编译方法

    母语不就是用来吐槽的么!!!!!说母语我不骂人难道还用英语么!!!!!!!!!! 说什么什么开源库好的狗日的,尼玛有种先搞定编译啊卧槽!!!!!!!!! 是的!!!!!你可以吐槽老子智商低用弱智煞笔W ...

  9. Windows系统在本地配置一个apache域名的方法

    我使用的xampp 1.修改C:\Windows\System32\drivers\etc中的hosts文件,添加127.0.0.1 www.feiquan.com 2.修改D:\xampp\apac ...

随机推荐

  1. 【Java面试】为什么引入偏向锁、轻量级锁,介绍下升级流程

    Hi,我是Mic 一个工作了7年的粉丝来找我,他说最近被各种锁搞晕了. 比如,共享锁.排它锁.偏向锁.轻量级锁.自旋锁.重量级锁. 间隙锁.临键锁.意向锁.读写锁.乐观锁.悲观锁.表锁.行锁. 然后前 ...

  2. mybatis踩过的坑

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...

  3. SAP Web Dynpro-集成消息

    您可以使用消息管理器将消息集成到消息日志中. 您可以使用Web Dynpro代码向导打开消息管理器. 您可以从工具栏中打开Web Dynpro代码向导. 当您的ABAP工作台处于更改模式或编辑视图或控 ...

  4. Linux文件的特殊属性

    文件的特殊属性 作用:文件的权限不能显示root用户,为了防止root用户的误操作,所以需要特殊属性来防止root用户的误操作. chattr工具: 可以给文件添加特殊的属性 +i:对这个文件不能修改 ...

  5. 【python基础】第06回 运算符和流程控制 1

    本章内容概要 1.运算符 2.流程控制 本章内容详解 1.运算符 什么是运算符? 运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是" ...

  6. IDEA插件配置之Eclipse Code Formatte

    1.下载 在idea中的Plugins中下载插件 Eclipse Code Formatte,下载过之后重启. 2.配置 将自己下载的xml文件加载进来即可. 这个xml文件可自行在网上找找,有需要的 ...

  7. NC14583 糖糖别胡说,我真的不是签到题目

    NC14583 糖糖别胡说,我真的不是签到题目 题目 题目描述 从前,有 \(n\) 只萌萌的糖糖,他们分成了两组一起玩游戏.他们会排成一排,第 \(i\) 只糖糖会随机得到一个能力值 \(b_i\) ...

  8. 数组容器(ArrayList)设计与Java实现,看完这个你不懂ArrayList,你找我!!!

    数组容器(ArrayList)设计与Java实现 本篇文章主要跟大家介绍我们最常使用的一种容器ArrayList.Vector的原理,并且自己使用Java实现自己的数组容器MyArrayList,让自 ...

  9. 广义径向基网络(RBF网络)

  10. CMP0065警告问题

    参考链接: https://cmake.org/cmake/help/latest/policy/CMP0065.html https://cmake-developers.cmake.narkive ...