- 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
。