Ubuntu安装postgresql和postgis

1.安装环境

Ubuntu 18、20、22
PostgreSQL 14
PostGIS 3.4

2 安装PostgreSQL

要在 Ubuntu 上安装 PostgreSQL 和 PostGIS,可以按照以下步骤操作:
在 Ubuntu 上安装特定版本的 PostgreSQL 数据库,你可以使用 apt 包管理器来实现。以下是安装特定版本 PostgreSQL 的步骤:

  1. 添加 PostgreSQL 官方仓库

    如果还没有添加 PostgreSQL 官方仓库,可以使用以下命令添加:

    sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
    wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
    sudo apt update
    
  2. 安装指定版本的 PostgreSQL

    一旦添加了官方仓库,可以安装特定版本的 PostgreSQL。例如,安装 PostgreSQL 14,可以执行以下命令:

    sudo apt install postgresql-14
    

    如果需要安装其他版本的 PostgreSQL,只需将软件包名称中的版本号更改为你需要的版本即可。

  3. 启动 PostgreSQL 服务

    安装完成后,PostgreSQL 服务应该会自动启动。你可以使用以下命令检查 PostgreSQL 服务的状态:

    sudo systemctl status postgresql@14-main
    

    如果服务未启动,你可以使用以下命令手动启动它:

    sudo systemctl start postgresql@14-main
    

3 安装 PostGIS 扩展

接下来,安装 PostGIS 扩展。PostGIS 是 PostgreSQL 中用于地理空间数据处理的扩展。

sudo apt install postgis postgresql-14-postgis-3

这将安装 PostgreSQL 14 版本的 PostGIS 扩展。如果希望安装其他版本的 PostGIS,可以相应地更改软件包名称中的版本号。

4 创建 PostgreSQL 数据库

安装完 PostGIS 扩展后,需要创建一个数据库,并启用 PostGIS 扩展。首先,以 postgres 超级用户身份登录到 PostgreSQL:

sudo -u postgres psql

然后在 PostgreSQL 命令行中创建一个数据库:

CREATE DATABASE postgis_test;

若需修改postgres用户密码,在进入数据库后,执行以下命令,二次确认密码后即可

\password postgres
  1. 启用 PostGIS 扩展

    进入刚才创建的数据库:

    \c postgis_test;
    

    然后,启用 PostGIS 扩展:

    CREATE EXTENSION postgis;
    

    如果你还需要启用其他的地理空间扩展(如 topology、tiger_geocoder 等),可以进一步启用它们:

    CREATE EXTENSION postgis_topology;
    CREATE EXTENSION fuzzystrmatch;
    CREATE EXTENSION postgis_tiger_geocoder;
    

    最后,退出 PostgreSQL 命令行:

    \q
    

现在,你已经在 Ubuntu 上成功安装了 PostgreSQL 和 PostGIS,并创建了一个具有 PostGIS 扩展的数据库。

5 查看postgresql数据库和postgis版本

要查看 PostgreSQL 数据库的版本,可以使用以下命令:

```bash
psql --version
```

这将显示安装在系统上的 PostgreSQL 版本。

要检查是否安装了 PostGIS 扩展,并查看其版本,需要可以连接到 PostgreSQL 数据库并执行以下 SQL 查询:

```sql
SELECT PostGIS_full_version();
```

这将返回安装的 PostGIS 版本信息。如果返回的结果中包含了版本号,就说明 PostGIS 已经安装并可用。

6 配置postgresql数据库ip连接

刚安装的数据库,默认只有本机ip可以连接,如需要远程连接还需要配置ip地址

要设置 PostgreSQL 允许特定 IP 地址访问,需要编辑 PostgreSQL 的配置文件 `postgresql.conf` 和访问控制文件 `pg_hba.conf`。
  1. 编辑 postgresql.conf 文件

    打开 postgresql.conf 文件:

    sudo vim /etc/postgresql/14/main/postgresql.conf
    

    找到 listen_addresses 参数并将其设置为需要允许访问的 IP 地址。如果要允许所有 IP 地址访问,可以将其设置为 '*'。例如:

    listen_addresses = 'localhost,192.168.1.100'
    

    保存并关闭文件后,重新启动 PostgreSQL 服务使更改生效:

    sudo systemctl restart postgresql@14-main
    
  2. 编辑 pg_hba.conf 文件

    打开 pg_hba.conf 文件:

    sudo vim /etc/postgresql/14/main/pg_hba.conf
    

    在文件中添加允许访问的规则。例如,如果要允许来自 IP 地址 192.168.1.100 的所有用户访问所有数据库,可以添加如下规则:

    host    all             all             192.168.1.100/32         md5
    

    这表示使用密码验证 (md5) 的方式允许来自 IP 地址 192.168.1.100 的所有用户访问所有数据库。

    保存并关闭文件后,重新启动 PostgreSQL 服务使更改生效:

    sudo systemctl restart postgresql@14-main
    

    根据需求修改 IP 地址和访问规则。安全起见,需确保仅允许受信任的 IP 地址访问 PostgreSQL 数据库。

posted @ 2024-02-04 00:05  槑孒  阅读(639)  评论(0编辑  收藏  举报