postgresql 10.5 安装步骤
1. https://www.postgresql.org/download/linux/redhat/ 官方网站选择对应的版本,目前选择 10.5 为例
指定安装源安装对应的数据库
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-redhat10-10-2.noarch.rpm
yum install postgresql10
yum install postgresql10-server
2. 创建对应的数据库实例
/usr/pgsql-10/bin/postgresql-10-setup initdb
systemctl enable postgresql-10
systemctl start postgresql-10
可使用下面命令确认服务
ps -ef | grep postgres
3. 安装 postgis 支持空间计算
yum list |grep pgdg10
yum list |grep pgdg10 | grep postgis
yum install postgis25_10
4. 移动数据库到指定目录
mv /var/lib/pgsql/10/* /data/pgsql/
chown -R postgres:postgres /data/pgsql
cat /usr/lib/systemd/system/postgresql-10.service
修改指定的数据目录 Environment=PGDATA=/data/pgsql/data/
cat /data/pgsql/data/postgresql.conf
修改数据目录 data_directory = '/data/pgsql/data'
systemctl daemon-reload
systemctl restart postgresql-10
可使用下面命令确认服务数据目录已经更改
ps -ef | grep postgres
5.修改密码
su postgres
psql
ALTER ROLE postgres WITH PASSWORD 'MapPostgresql1';
6. 修改授权
cat /data/pgsql/data/pg_hba.conf
# IPv4 local connections:
host all all 127.0.0.1/32 ident
host all all 0.0.0.0/0 md5
systemctl restart postgresql-10
7. 创建数据库并配置数据库的空间计算支持
psql -U postgres -d appstat -h10.125.213.11 -W
输入上面配置的密码,登录交互命令行
create database appstat;
\c appstat;
CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;
CREATE EXTENSION postgis_sfcgal;
CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION postgis_tiger_geocoder;
CREATE EXTENSION address_standardizer;
\q
8. 验证 空间计算
select st_contains(st_geomfromtext('Polygon((0 0,3 0,0 4,0 0))'),st_geomfromtext('Point(1 1)'));
select st_contains(st_geomfromtext('Polygon((0 0,3 0,0 4,0 0))'),st_geomfromtext('Point(3 2)'));
上的样例演示了一个直角三角形,坐标(0,0),(3,0),(0,4),判断选中 (3,2),(1,1) 两个点是否在三角形内,
mysql 5.7,8.13 对 (3,2) 这个坐标判断失误。