PostGIS安装和运维

标签: Postgresql 分类: 数据库 创建时间:2019-10-31 01:37:36 更新时间:2024-11-15 10:49:43

前言

这篇主要增加了一些在安装了 postgresql 之后,安装 postgis 的方法。

1.CentOS

在CentOS的安装,基本上能安装上,使用yum命令就可以了。

1.查看可以安装的postgis版本

1
yum list | grep postgis

2.安装

我选择了安装postgis30_12.x86_64服务端和客户端postgis30_12-client.x86_64

1
yum install postgis30_12.x86_64 postgis30_12-client.x86_64

2.Windows安装

因为我有一台需要离线安装的系统。
(1) 找到 下载地址,选择需要的版本进行离线下载。

(2) 找到相应的版本之后,直接双击安装就可以了,比如我这里安装的是:postgis-bundle-pg15x64-setup-3.4.0-1.exe 版本。

3.ubuntu

在Ubuntu或者debian下安装postgis还是很简单的。相关地址 我是用了xshell登录linux主机。有几个小命令可以在这里记录下:

1
2
3
4
## 1.查看系统版本:
uname -a
## 2.查看安装了那些包:
dpkg --get-selections

安装步骤:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt xenial-pgdg main" >> /etc/apt/sources.list'
wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

sudo apt install postgresql-10
sudo apt install postgresql-10-postgis-2.4
sudo apt install postgresql-10-postgis-scripts

#to get the commandline tools shp2pgsql, raster2pgsql you need to do this
sudo apt install postgis

# Install pgRouting 2.6 package
sudo apt install postgresql-10-pgrouting

根据上面的网站一步步的操作,最后会安装成功的,但是安装成功后,无法登录数据库,默认的postgres会创建一个用户名为postgres的用户,但是没有密码,需要手动设置。

主要执行以下几个命令:

1
2
3
4
5
6
7
8
$ sudo su postgres    #切换至postgres 
$ psql postgres #登入默认数据库

postgres=#\password postgres #给postgres用户设置密码
Enter new password:
Enter it again:
postgres=#

4.Alibaba Cloud Linux

1
2
3
4
# 安装
dnf install postgis34_16
# 重启
systemctl restart postgresql-16

5.运维

1
2
3
4
5
6
7
8
9
10
11
12
## 切换用户
su postgres
## 连接postgresql,或者:psql -p 5432
psql
## 创建数据库
CREATE DATABASE gistest;
## 连接数据库 或者\connect
\c gistest;
## 安装插件
CREATE EXTENSION postgis;
## 验证安装是否成功,有版本输出就说明已经安装成功了
SELECT postgis_full_version();

到此,就完成了CentenOS上的postgresql和postgis的安装和测试。

小额赞助
本人提供免费与付费咨询服务,感谢您的支持!赞助请发邮件通知,方便公布您的善意!
**光 3.01 元
Sun 3.00 元
bibichuan 3.00 元
微信公众号
广告位
诚心邀请广大金主爸爸洽谈合作
每日一省
isNaN 和 Number.isNaN 函数的区别?

1.函数 isNaN 接收参数后,会尝试将这个参数转换为数值,任何不能被转换为数值的的值都会返回 true,因此非数字值传入也会返回 true ,会影响 NaN 的判断。

2.函数 Number.isNaN 会首先判断传入参数是否为数字,如果是数字再继续判断是否为 NaN ,不会进行数据类型的转换,这种方法对于 NaN 的判断更为准确。

每日二省
为什么0.1+0.2 ! == 0.3,如何让其相等?

一个直接的解决方法就是设置一个误差范围,通常称为“机器精度”。对JavaScript来说,这个值通常为2-52,在ES6中,提供了Number.EPSILON属性,而它的值就是2-52,只要判断0.1+0.2-0.3是否小于Number.EPSILON,如果小于,就可以判断为0.1+0.2 ===0.3。

每日三省
== 操作符的强制类型转换规则?

1.首先会判断两者类型是否**相同,**相同的话就比较两者的大小。

2.类型不相同的话,就会进行类型转换。

3.会先判断是否在对比 null 和 undefined,是的话就会返回 true。

4.判断两者类型是否为 string 和 number,是的话就会将字符串转换为 number。

5.判断其中一方是否为 boolean,是的话就会把 boolean 转为 number 再进行判断。

6.判断其中一方是否为 object 且另一方为 string、number 或者 symbol,是的话就会把 object 转为原始类型再进行判断。

每日英语
Happiness is time precipitation, smile is the lonely sad.
幸福是年华的沉淀,微笑是寂寞的悲伤。