自从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 文件夹中执行下面的命令,对相关文件进行删除。

del stackbuilder.exe
del libcurl.dll
del wxbase313u_vc_x64_custom.dll
del wxbase313u_xml_vc_x64_custom.dll
del wxbase313ud_net_vc_x64_custom.dll
del wxmsw313u_adv_vc_x64_custom.dll
del wxmsw313u_core_vc_x64_custom.dll
del wxmsw313ud_aui_vc_x64_custom.dll
del wxmsw313ud_html_vc_x64_custom.dll
del wxmsw313ud_xrc_vc_x64_custom.dll

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

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

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

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

cmd
d:
cd D:\Software\PostgreSQL
cd bin

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

首先初始化实例

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 服务了,注册服务命令如下

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

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

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

打开 postgresql.conf 文件,找到

#listen_addresses = 'localhost'

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

listen_addresses = '*'

保存后关闭文件。

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

host all all 0.0.0.0/0 scram-sha-256
host all all ::/0 scram-sha-256

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

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

net start PostgreSQL

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

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

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

net stop PostgreSQL

然后执行卸载命令即可

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

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. [自制操作系统] 第05回 CPU的三种模式

    目录 一.前景回顾 二.实模式和保护模式 一.前景回顾 在之前我们说到,loader的作用才是读取加载操作系统内核,那么我们的重心就应该是loader.S文件,其实我们接下来也的确是会往loader. ...

  2. 基恩士的浓淡补正算法(Shading Correction Filter)的模拟实现。

    知道这个算法应该有很久了,主要当时在意2个事情,一个是这个名字的翻译是在是搞笑,第二是这个算法的效果.不过一直以来都十分好奇这个算法是怎么实现的.因为之前一直无法实际的用基恩士的软件平台用不同的图片去 ...

  3. 利用IDEA搭建SpringBoot项目,整合mybatis

    一.配置文件.启动项目 生成之后这几个文件可以删掉的 配置application spring.datasource.url=jdbc:mysql://localhost:3306/test?serv ...

  4. linux下怎样在某个文件里面查找一个字符串?

    方法一: grep命令 举个栗子:我想要在redis.conf中查询我设置的redis密码,执行下面代码 grep "require" redis.conf #grep " ...

  5. 事务@Transactional注解的属性

    事务的传播行为 当事务方法被另一个事务方法调用时,必须指定事务应该如何传播.例如:方法可能继续在现有事务中运行,也可能开启一个新事务,并在自己的事务中运行.事务的传播行为可以由传播属性指定.Sprin ...

  6. chrome请求cgi遇到net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)

    测试一个web demo的时候,通过chrome请求板子上的web server的cgi时总是提示:net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK) 搜遍整个 ...

  7. npm相关知识整理

    语义化版本 major: 重大变化,不兼容老版本 minor: 新增功能,兼容老版本 patch: 修复bug,兼容老版本 依赖版本号 * 匹配最新版本的依赖 ^ 匹配最近的大版本依赖,比如^1.2. ...

  8. freeswitch的话单模块

    概述 最近因为业务需要,在看freeswitch中话单相关的一些模块. 在voip的使用过程中,话单是重要的基础模块,涉及到计费和问题查找. 呼叫话单最重要的一点是稳定,不能有错误或遗漏. 本章对fs ...

  9. Solution -「2020.12.26」 模拟赛

    0x00 前言 一些吐槽. 考得很变态诶,看每道题平均两秒的时限就知道了... T1 降智了想到后缀懒得打. T2 口胡了假优化,结果和暴力分一样?? T3 黑题还绑点?? \(50 + 80 + 0 ...

  10. 浅谈spring-createBean

    目录 找到BeanClass并且加载类 实例化前 实例化 Supplier创建对象 工厂方法创建对象 方法一 方法二 推断构造方法 BeanDefionition 的后置处理 实例化后 属性填充 sp ...