PostgreSQL ZIP版安装完全手册

前言

ZIP免安装版下载地址:社区 DL 页面 (enterprisedb.com)

选择所需的版本下载即可。

安装

将下载的zip安装包(我这里下载的是postgresql-15.5-1-windows-x64-binaries.zip)解压至D盘根路径下,解压后路径:D:/pgsql

初始化数据库

打开一个cmd窗口(普通cmd窗口,非管理员模式)

切换到d:/pgsql目录下,执行初始化语句

d:
cd pgsql
bin\initdb -D data -U postgres -A password -E utf8 --locale=chs -W

初始化过程中会提示设置超级用户(postgres)的密码。

初始化完成后,在D:/pgsql目录下会创建data文件夹,该文件夹用于存放数据,文件夹名称可以根据自己需要在初始化命令中修改,命令说明:

-D  data            指定初始化的数据库目录(此处为当前目录的data文件夹)

-U  postgres     数据库超级用户名(此处为postgres,如果不设置,会用当前windows用户名为账号)

-A  password    数据库使用密码授权

-E  utf8             数据库编码格式

--locale=chs     数据库簇使用的中文语言 

-W                    命令行执行后 输入密码

启动数据库

初始化完成后即可根据提示使用命令启动pgsql

bin\pg_ctl -D data -l pglog.txt start

命令说明:

-D data             指启动时使用哪个数据库目录

-l pglog.txt        指定启动时数据库日志的保存路径(直接命名会在当前命令下创建对应文件,此处创建日志文件为pglog.txt)

 同理,可使用命令关闭数据库(关闭时无需指定日志文件路径)

bin\pg_ctl -D data stop

连接数据库

重新打开数据库,在pgsql文件夹下找到pgadmin 4工具(D:\pgsql\pgAdmin 4\runtime\pgAdmin4.exe)连接数据库

在“Server上右键 ——> 注册 ——> 服务器”来添加一个服务器,配置信息如下:

General信息:

        名称:自定义一个连接名称(我这里取名localhost)

连接信息:

        主机名称/地址:127.0.0.1(目前只能使用localhost或127.0.0.1连接,无法通过网络IP访问)

        维护数据库:postgres

        用户:postgres

        密码:超级管理员postgres的密码(前面初始化数据库时设置的)

至此数据库可通过本地连接成功! 

配置

使数据库支持远程访问

先关闭数据库,然后修改两个文件配置:

修改Data目录下pg_hba.conf文件(D:\pgsql\data\pg_hba.conf):

将host all的地址修改为0.0.0.0/0,表示不限制客户端地址

修改Data目录下postgresql.conf文件(D:\pgsql\data\postgresql.conf):

增加listen_addresses = '*'配置信息,表示监听服务器所有有效IP

修改完成后重新启动数据库,使用pgAdmin 4客户端连接,此时已可以访问。

此时数据库启动的命令窗是不能关闭的,关闭的话数据库也会同步关闭(若想使数据库一直开启,可将数据库启动注册成系统服务) 

将pgsql注册成系统服务

打开一个cmd窗口(管理员模式cmd窗口

切换到d:/pgsql目录下,执行注册服务语句

bin\pg_ctl.exe register -N "pgsql" -D "D:\pgsql\data"

注册成功后可在Windows服务中找到名为“pgsql”的服务

系统服务操作常用命令:

启动pgsql服务:net start pgsql

关闭pgsql服务:net stop pgsql

启动数据库服务后即可正常使用数据库,无需再通过命令控制台管理数据库。

至此,免安装版安装完成,希望对您有所帮助!

常用命令

启动数据库:D:\pgsql>bin\pg_ctl -D data -l pglog.txt start

关闭数据库:D:\pgsql>bin\pg_ctl -D data stop

常用语句

更新指定字段为自增序列

1)先创建自定义序列

create SEQUENCE seq_dayReport_id
start with 1
increment by 1
no MINVALUE
no MAXVALUE
cache 1;

上面序列表示从1开始,自增步长为1,没有最大上限和最小上线,数据库始终缓存1个序列

2)更新指定字段为序列值

update "dayReport"
set id = nextval('seq_dayReport_id')

上面语句表示修改dayReport表的id字段,设置该字段为seq_dayReport_id序列的值,nextval函数可获取下一个序列

3)设置表字段为自增序列

alter table "dayReport" alter COLUMN id set DEFAULT nextval('seq_dayReport_id');

后面再添加数据时,id字段将支持自增

  • 14
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值