Postgresql(带postgis扩展插件) 在Docker下的部署

镜像: sudo docker pull kartoza/postgis:9.6-2.4

sudo docker run --restart=always --name postgres96 -e ALLOW_IP_RANGE=0.0.0.0/0 -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d kartoza/postgis:9.6-2.4

-e ALLOW_IP_RANGE=0.0.0.0/0,表示允许所有ip访问,如果不加,则只能本机IP访问

查看postgres数据库版本 select version()
查看数据库编码格式 show server_encoding


查看postgres版本验证是否正常
select version();


sudo docker exec -it xxxxxxxx /bin/bash

安装postgis插件
升级apt-get
sudo apt-get update
安装postgis,目前安装默认安装postgresql9.6对应的postgis
apt-get install postgis


搜索下看扩展是否安装
find /usr -name postgis.control

最后使用navicat 连接postgresql

新建数据库,新建模式postgres

启用扩展
create extension postgis;

 函数有这么多,说明postgis 扩展创建成功了。

测试是否启用成功
select postgis_full_version();

将postgres 内的文件复制到服务器的磁盘内,进行映射

sudo mkdir -p /opt/appdata/mypostgres

复制容器内 文件-到服务器本地  ,(容器名):容器内文件目录 服务器磁盘目录
sudo docker cp postgres(容器名):/var/lib/postgresql/9.6/main /opt/appdata/mypostgres

sudo docker cp postgres(容器名):/usr/lib/postgresql/9.6/lib /opt/appdata/mypostgres

最后是在  将磁盘目录 映射到容器内

默认连接数是100 ,如果连接数不够,可以修改

容器内的【/etc/postgresql/9.6/main】下面的 postgresql.conf

复制容器内的文件夹到 磁盘内

docker cp mypostgres:/etc/postgresql/9.6/main /data/postgres/someconf/

这边映射下路径, /data/postgres/someconf   服务器的目录

 /etc/postgresql/9.6/main   容器内的目录

修改  max_connections = 1000

==============================

方式二安装:

docker pull postgis/postgis:11-3.2
docker run -itd --name postgres01 --restart=always -p 5432:5432 -e POSTGRES_PASSWORD='postgres'  -e PGDATA=/var/lib/postgresql/data/pgdata -v /root/data/docker-data/postgres01:/var/lib/postgresql/data  postgis/postgis:11-3.2

需要so
/usr/lib/postgresql/11/lib/st_geometry.so

拷贝st_geometry.so 文件到容器内部:
docker cp /data/postgres01/st_geometry.so postgres01:/usr/lib/postgresql/11/lib/

create extension postgis;

select * from  pg_extension;

Postgre SQL修改字段类型语法

ALTER table 表名 ALTER COLUMN 字段名 type 字段类型 USING 字段名::字段类型
ALTER table test_table ALTER COLUMN test_column type double precision USING test_column ::double precision

ALTER table test_table ALTER COLUMN gemo type "sde"."st_geometry" USING shape ::"sde"."st_geometry"

修改最大链接数据

如果不想关闭空闲链接,可以增加最大链接数

postgres=# show max_connections;
postgres=# alter system set max_connections=1000;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值