当前位置 博文首页 > qq262593421的博客:Linux在线安装部署postgresql12+postgis3.1

    qq262593421的博客:Linux在线安装部署postgresql12+postgis3.1

    作者:[db:作者] 时间:2021-08-17 21:48

    目录

    一、在线安装pgsql12

    1、进入官网

    2、选择系统版本

    3、选择合适版本

    4、安装启动服务

    6、查看pgsql服务

    二、配置pgsql12

    1、修改账户密码

    2、运行远程连接

    3、重启postgresql

    三、添加postgis依赖

    1、安装postgis依赖

    2、pgsql添加postgis拓展

    3、使用空间函数

    4、查看安装版本


    一、在线安装pgsql12

    1、进入官网

    postgresql官网:https://www.postgresql.org/

    postgresql中文社区:http://www.postgres.cn/v2/document

    2、选择系统版本

    选择之后等待网页自动跳转

    3、选择合适版本

    网页下拉找到?PostgreSQL Yum Repository ,选择安装的版本,之后复制安装命令并执行

    sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
    sudo yum install -y postgresql12-server
    sudo /usr/pgsql-12/bin/postgresql-12-setup initdb
    sudo systemctl enable postgresql-12
    sudo systemctl start postgresql-12

    4、安装启动服务

    继续往下拉,找到?Post-installation ,执行启动服务命令

      postgresql-setup --initdb
      systemctl enable postgresql.service
      systemctl start postgresql.service

    6、查看pgsql服务

    ps -ef | grep postgres

    二、配置pgsql12

    1、修改账户密码

    切换系统角色

    su postgres

    命令行登录pgsql

    psql

    重新设置密码

    \password postgres

    查看密码(已经过MD5加密)

    SELECT rolname,rolpassword FROM pg_authid;

    在线安装默认路径

    /var/lib/pgsql/12/data/
    /usr/bin/postgresql-12-setup
    /usr/pgsql-12/bin/postgresql-12-setup

    2、运行远程连接

    修改pg_hba.conf配置文件,添加允许其他机器访问

    su postgres
    vim /var/lib/pgsql/12/data/pg_hba.conf

    添加以下代码

    host all all 0.0.0.0/0 password

    修改?postgresql.conf,将监听修改为监听所有主机的请求

    vim /var/lib/pgsql/12/data/postgresql.conf

    搜索配置位置 :/listen,添加以下代码

    listen_addresses = '*'

    3、重启postgresql

    systemctl restart postgresql-12
    systemctl status postgresql-12 

    三、添加postgis依赖

    postgis官网:http://www.postgis.org/

    postgis官方文档:http://postgis.net/documentation/

    postgis用户手册:http://download.osgeo.org/postgis/docs/postgis-3.1.1.pdf

    postgis源码编译:http://postgis.net/docs/postgis_installation.html#install_short_version

    1、安装postgis依赖

    为CentOS7/RHEL7安装EPEL 仓库(repo)

    yum -y install epel-release

    yum在线安装postgis

    yum -y install postgis31_12.x86_64 postgis31_12-client.x86_64 postgis31_12-devel.x86_64 postgis31_12-docs.x86_64 postgis31_12-gui.x86_64 postgis31_12-utils.x86_64

    2、pgsql添加postgis拓展

    注意:扩展的postgis依赖只对当前数据库有效

    -- 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;

    3、使用空间函数

    -- Create table with spatial column
    CREATE TABLE mytable (
      id SERIAL PRIMARY KEY,
      geom GEOMETRY(Point, 26910),
      name VARCHAR(128)
    );
     
    -- Add a spatial index
    CREATE INDEX mytable_gix
      ON mytable
      USING GIST (geom);
     
    -- Add a point
    INSERT INTO mytable (geom) VALUES (
      ST_GeomFromText('POINT(0 0)', 26910)
    );
     
    -- Query for nearby points
    SELECT id, name
    FROM mytable
    WHERE ST_DWithin(
      geom,
      ST_GeomFromText('POINT(0 0)', 26910),
      1000
    );

    Navicat连接pgsql查看创建的空间函数表

    4、查看安装版本

    SELECT version();
    SELECT PostGIS_full_version();

    cs
    下一篇:没有了