安装脚本

windows上安装PostgreSQL还是比较麻烦的,又是安装又是配置,还要设为系统服务,远不像linux上一条命令就搞定,所以参考网上其它资料整理后形成批处理文件,直接放在解压出来的pgsql根目录下执行即可。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
::******************************************************************************
::  注意:需要放到 PostgreSQL 根目录下执行!!
::******************************************************************************
@echo off
::==============================================================================
set pgpath=%cd%
echo 1. 安装服务
echo 2. 卸载服务
set /p op="请选择操作: "
if %op%==1 goto :Install
if %op%==2 goto :Uninstall
::==============================================================================
:Install
echo ****************************
echo * 注意:输入密码时不可见! *
echo ****************************
::初始化数据库簇
bin\initdb -D data -U postgres -A password -E utf8 -W
::是否开启局域网访问
set /p lan="是否开启局域网访问?[y/n]:"
if %lan%==y (
    echo host    all             all             0.0.0.0/0               password>> data\pg_hba.conf
    echo listen_addresses = '*'>> data\postgresql.conf
)
::设置端口
set /p pt="设置端口(默认 5432):"
if not defined pt set pt=5432
if not %pt%==5432 echo port = %pt%>> data\postgresql.conf
::注册为windows服务
bin\pg_ctl register -D data -N PostgreSQL
::启动服务
sc start PostgreSQL
goto :eof
::------------------------------------------------------------------------------
:Uninstall
::停止服务
sc stop PostgreSQL
::注销服务
bin\pg_ctl unregister -N PostgreSQL
::删除数据
set /p d="是否删除 data 目录?[y/n]: "
if /i %d%==y rd /s /q "%pgpath%\data"
goto :eof