https://www.postgresql.org/download/windows/ (zip archive)
https://www.enterprisedb.com/download-postgresql-binaries
1、cmd窗口进入D:\database\postgresq\bin,依次执行如下命令:
set PGHOME=D:\database\postgresq
set PGDATA=%PGHOME%\data
set PGLIB=%PGHOME%\lib
set PGHOST=localhost
set PATH=%PGHOME%\bin;%PATH%
2、 添加用户
> 添加windows用户,用于启动PostgreSQL的windows服务
D:\database\postgresql>net user postgres pgsqlpw /add /expires:never /passwordchg:no
> 为保证安全,此用户不允许本地登录
D:\database\postgresql>net localgroup users postgres /del
> 赋于windows用户postgres访问PostgreSQL安装目录的权限
D:\database\postgresql>cacls . /T /E /P postgres:R
新建一个data文件夹,用来存放数据
5. 初始化数据库
> 切换到windows用户postgres的命令行环境
>runas /noprofile /env /user:postgres "cmd"
> 初始化数据库,若不使用-U admin,则数据库里自动添加当前windows用户(即postgres)为数据库帐号
>bin\initdb -D "D:\database\postgresql\data" -E UTF-8 --locale=chs -A md5 -U admin -W
注:
-D :指定数据库簇的存储目录D:\tools\postgres\pgsql\data
-E :指定DB的超级用户的用户名postgres
–locale:关于区域设置(chinese-simplified-china)
-U :默认编码格式chs
-W :为超级用户指定密码的提示
期间会提示你输入你要配置的postgres用户的密码!
6、启动PostgreSQL服务:
pg_ctl -D D:\database\postgresql\data -l D:\database\postgresql\pglog.txt start
7. 创建并连接数据库:
createdb test
psql -h localhost -w -d test
8. 关闭PostgreSQL服务:
pg_ctl -D D:\database\postgresql\data stop
9. 注册为Windows服务:
> 注册为windows服务,当前windows用户(即postgres)将作为PostgreSQL服务的登录用户
>bin\pg_ctl register -N PostgreSQL -D “D:\database\postgresql\data”
> 启动PostgreSQL服务
> sc start PostgreSQL
> net start PostgreSQL
点下面链接下载PostgreSQL 11.1 64位解压版
https://get.enterprisedb.com/postgresql/postgresql-11.0-1-windows-x64-binaries.zip
# 假设PostgreSQL 11解压路径为 D:\PostgreSQL11
# 建data目录
D:\PostgreSQL11\data
# 初始化并设置超级用户 postgres 密码
D:\PostgreSQL11\bin\initdb.exe -U postgres -W --locale=C -E UTF8 -D D:\PostgreSQL11\data
# 修改 D:\PostgreSQL11\data\postgresql.conf
listen_addresses = '*'
port = 5432
# 启动服务
D:\PostgreSQL11\bin\pg_ctl.exe -D D:\PostgreSQL11\data -l D:\PostgreSQL11\data\logfile.log start
# 停止服务
D:\PostgreSQL11\bin\pg_ctl.exe -D D:\PostgreSQL11\data -l D:\PostgreSQL11\data\logfile.log stop
# 重启服务
D:\PostgreSQL11\bin\pg_ctl.exe -D D:\PostgreSQL11\data -l D:\PostgreSQL11\data\logfile.log restart
# 以超级用户 postgres 登录
D:\PostgreSQL11\bin\psql -U postgres
postgres=#
-------------------------------------------------------------------------------------------------------------------------------------------------------------
命令行移动到解压后目录,初始化数据库:
bin\initdb -D data -U postgres -A password -E utf8 --locale=C -W
命令行参数意义:
-D data 指定初始化的数据库目录(此处为当前目录的data文件夹)
-U postgres 数据库超级用户名(此处为postgres,如果不设置,会用当前windows用户名为账号)
-A password 数据库使用密码授权
-E utf8 数据库编码格式
--locale=C 数据库簇使用的本地化语言
-W 命令行执行后 输入密码
初始化数据库完成后,指定数据库目录,启动数据库服务器:
bin\pg_ctl -D data start
打开 pgAdmin 4 连接对应数据库 输入密码即可。
生成的数据配置文件,在指定的数据库目录下(此处为“Data”目录),有需要可自行修改。
-------------------------------------------------------------------------------------------------------------------------------------------------------------
精简部分
保留全部 PostgreSQL 相关功能
删除自带的 pgadmin 4
删除文档
删除开发用头文件
删除开发用静态连接库
删除 Stack Build 工具
写了一个管理数据库用的批处理
注意:
部分系统可能需要安装 vc2010_redis