- 1. PostgreSQL简介
- 2. 下载
- 3. 安装环境
- 4. 安装
- 4.1. 初始化数据库
- 4.2. 启动数据库
- 4.3. 注册服务
- 4.3. 卸载服务

1. PostgreSQL简介
PostgreSQL 是一种特性非常齐全的自由软件的对象-关系型数据库管理系统,是以加州大学计算机系开发的 POSTGRES 4.2版本为基础的对象关系型数据库管理系统。 POSTGRES 的许多领先概念只是在比较迟的时候才出现在商业网站数据库中。PostgreSQL 支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。同样,PostgreSQL 也可以用许多方法扩展,例如通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言等。另外,因为许可证的灵活,任何人都可以以任何目的免费使用、修改和分发PostgreSQL 。
PostgreSQL 截止当前最新版本为 16.1,具体可查看官网https://www.postgresql.org/

2. 下载
PostgreSQL 二进制下载地址为 https://www.enterprisedb.com/download-postgresql-binaries。

3. 安装环境
- 操作系统为 Windows 10
- 需要
CMD管理员执行权限 - 此处选择
15.3-3版本作为演示。 - 【重要】安装路径:
D:\Environment\Postgresql\15.3-3,因为我此前安装过14.8-3,因此我在D:\Environment\Postgresql\15.3-3下单独分一个文件夹,此处需要注意,以下简称POSTGRE_HOME文件夹, - 【重要】数据文件存放路径:
E:\Repertory\Database\PostgreSQL,以下简称DATA文件夹。

4. 安装
安装的操作目录均在 POSTGRE_HOME 下。


4.1. 初始化数据库
初始化数据库用到的命令是 :initdb.exe:
| 命令 | 描述 |
|---|---|
| -A | –auth=METHOD 本地连接的默认认证方法;–auth-host=METHOD 本地的TCP/IP连接的默认认证方法;–auth-local=METHOD 本地socket连接的默认认证方法 |
| -D | –pgdata=DATADIR 当前数据库簇的位置 |
| -E | –encoding=ENCODING 为新数据库设置默认编码 |
| -g | –allow-group-access 允许组对数据目录进行读/执行 |
| -k | –data-checksums 使用数据页产生效验和;–locale=LOCALE 为新数据库设置默认语言环境;–lc-collate, --lc-ctype, --lc-messages=LOCALE;–lc-monetary, --lc-numeric, --lc-time=LOCALE;为新的数据库簇在各自的目录中分别 |
| –no-locale | 等同于 --locale=C |
| –pwfile=FILE | 对于新的超级用户从文件读取口令 |
| -T | -text-search-config=CFG 缺省的文本搜索配置 |
| -U | –username=NAME 数据库超级用户名 |
| -W | –pwprompt 对于新的超级用户提示输入口令 |
| -X | –waldir=WALDIR 预写日志目录的位置,–wal-segsize=SIZE WAL段的大小(兆字节) |
注:命令上的地址如果输入错误,再次执行可能提示不能给 DATA 文件夹权限,删除 DATA 重新创建即可
执行命令 initdb.exe -D E:\Repertory\Database\PostgreSQL -E UTF-8 --locale=chs -U admin -W
D:\Environment\Postgresql\15.3-3\bin>initdb.exe -D E:\Repertory\Database\PostgreSQL -E UTF-8 --locale=chs -U admin -W
属于此数据库系统的文件宿主为用户 "WONGS".
此用户也必须为服务器进程的宿主.
数据库簇将使用本地化语言 "Chinese_China.936"进行初始化.
initdb: 无法为本地化语言环境"Chinese_China.936"找到合适的文本搜索配置
缺省的文本搜索配置将会被设置到"simple"禁止为数据页生成校验和.

输入相应的密码,等于设置数据库密码,(两次输入内容保持一致),此处我演示输入的是 12345678。在输入过程中不会显示输入内容,不影响操作。

4.2. 启动数据库
执行命令 pg_ctl -D E:\Repertory\Database\PostgreSQL -l logfile start
-D DATA 文件夹
-l 生成日志文件,文件名可编辑此处演示为 logfile, 日志文件默认生成到 bin 目录下。

4.3. 注册服务
执行命令 pg_ctl register -N PostgreSQL -D E:\Repertory\Database\PostgreSQL,回车运行显示如下内容则表示运行成功

此刻打开任务管理器,在服务中检查 PostgreSQL 的服务是否存在。

4.3. 卸载服务
如果在某些时候不需要该服务以服务名方式运行,则执行命令 pg_ctl unregister -N PostgreSQL。