win10安装PostgreSQL12.6

2022-01-05 21:47:20 浏览数 (1)

目录

一、环境准备

二、软件安装

三、验证安装

四、添加postgis依赖

五、常见错误处理

一、环境准备

1、官方网站

http://postgresql.org

2、版本链接

https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

3、准备文件

Postgresql安装包:postgresql-12.6-1-windows-x64.exe

Postgis安装包:postgis-bundle-pg12x64-setup-3.1.2-1.exe

二、软件安装

安装版本:postgresql-12.6-1-windows-x64

安装路径:D:HadoopPostgreSQLpostgresql-12.6

账户名:postgres 密码:123456

这里安装出现了问题,原因是之前已经安装过了

在安装目录找到 uninstall-postgresql.exe ,点击卸载postgresql

选择第一个为删除整个应用程序和应用程序安装的所有文件,选择第二个为删除单个组件,而保留安装的其余应用程序

三、验证安装

1、查看版本

先进入postgresql安装路径的bin目录,cmd执行

代码语言:javascript复制
psql --version

2、初始化数据库

代码语言:javascript复制
initdb.exe -D ../data

3、将目录安装者和程序包赋予全部权限

执行命令,启动postgresql

代码语言:javascript复制
pg_ctl -D ../data -l ../log start

这里启动遇到了以下错误,因为目录权限的问题

等待服务器进程启动 ....拒绝访问。 已停止等待 pg_ctl: 无法启动服务器进程 检查日志输出.

将pgsql目录给应用程序包和所有用户赋予全部权限

4、启动pgsql

代码语言:javascript复制
pg_ctl -D ../data -l ../log start

G:HadoopPostgreSQLPostgreSQL12bin>pg_ctl -D ../data -l ../log start 等待服务器进程启动 .... 完成 服务器进程已经启动

5、查看端口是否启动

cmd查看默认端口5432是否运行(可以回头试试管理员身份运行安装包)

代码语言:javascript复制
netstat -ano | findstr 5432

6、登录postgresql

代码语言:javascript复制
psql -p 5432 -U postgres

如果出现以下报错是因为安装时没有成功创建用户,需要手动创建

psql: 错误: 致命错误: 角色 "postgres" 不存在

cmd命令行进入安装目录的bin目录下执行以下命令,创建postgres用户

代码语言:javascript复制
createuser -s -r postgres
代码语言:javascript复制
psql -p 5432 -U postgres

四、添加postgis依赖

1、下载postgis安装包

postgis官网:http://postgis.net/install/

postgis下载:http://download.osgeo.org/postgis/windows/

选择对应版本下载

2、安装postgis

选择创建空间数据库,安装目录必须和postgresql的安装目录一致

之后弹出的提示一直选择yes即可(空间数据库的一些配置)

安装完成之后可看到空间数据库已经添加

3、手动添加空间函数支持

代码语言:javascript复制
-- Enable PostGIS (as of 3.0 contains just geometry/geography)
CREATE EXTENSION postgis;
-- enable raster support (for 3 )
CREATE EXTENSION postgis_raster;
-- Enable Topology
CREATE EXTENSION postgis_topology;
-- Enable PostGIS Advanced 3D
-- and other geoprocessing algorithms
-- sfcgal not available with all distributions
CREATE EXTENSION postgis_sfcgal;
-- fuzzy matching needed for Tiger
CREATE EXTENSION fuzzystrmatch;
-- rule based standardizer
CREATE EXTENSION address_standardizer;
-- example rule data set
CREATE EXTENSION address_standardizer_data_us;
-- Enable US Tiger Geocoder
CREATE EXTENSION postgis_tiger_geocoder;

五、常见错误处理

pgsql意外错误导致服务异常关闭

C:Userscom>psql -p 5432 psql: 错误: 无法联接到服务器: Connection refused (0x0000274D/10061) 服务器是否在主机 "localhost"(::1) 上运行并且准备接受在端口 5432 上的 TCP/IP 联接? 无法联接到服务器: Connection refused (0x0000274D/10061) 服务器是否在主机 "localhost"(127.0.0.1) 上运行并且准备接受在端口 5432 上的 TCP/IP 联接?

解决办法:

情况一:如果服务没有被删除可在计算机管理面板直接启动服务

右击我的电脑 ,点击管理或者 Win R键输入 services.msc 打开管理面板

情况二:如果服务已经删除了,需要重新注册服务再重启服务

1、管理员身份运行CMD,重新注册服务

代码语言:javascript复制
pg_ctl.exe register -N "postgresql" -D "G:/Hadoop/PostgreSQL/PostgreSQL12/data" 

2、启动pgsql服务

代码语言:javascript复制
net start postgresql

0 人点赞