更新时间:2024-12-20 GMT+08:00
分享

通过命令行连接FlexusRDS for PostgreSQL实例

操作场景

FlexusRDS for PostgreSQL实例购买完成后,可以先登录到Flexus云服务器X实例,在Flexus云服务器X实例上安装PostgreSQL客户端,然后通过psql命令行连接到实例。

通过客户端连接FlexusRDS for PostgreSQL实例(15及以下版本)

  1. 登录与FlexusRDS实例在同一区域下的Flexus云服务器X实例
  2. 安装PostgreSQL客户端。

    PostgreSQL社区提供了针对不同操作系统的客户端安装方法。通过操作系统的安装工具直接下载安装。此安装方式比较简单,但是对ECS操作系统有要求,只有PostgreSQL社区中支持的操作系统才可以使用该安装方式。

    使用操作系统默认安装,当前使用的Linux操作系统是CentOS 7,通过工具安装最高版本是15版本。

    图1 获取安装工具

    执行安装命令:

    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 postgresql15-server

    查看是否安装成功:

    psql -V
    图2 安装成功
  3. 在Flexus云服务器X实例上执行以下命令连接FlexusRDS for PostgreSQL实例。

    psql --no-readline -U<user>-h<host>-p<port>-d<datastore>-W

    示例:

    psql --no-readline -U root -h 192.168.0.44 -p 5432 -d postgres -W

    • Flexus云服务器X实例和FlexusRDS for PostgreSQL实例默认在同一个VPC、子网、安全组下。对应网络信息:vpc-default-smb、subnet-default-smb、sg-default-smb。
      表1 参数说明

      参数

      说明

      <host>

      内网连接和公网连接任选一种,推荐使用内网连接,安全性更高。

      • 内网连接(推荐):单击实例名称,在“概览”页面获取的内网地址。
      • 公网连接:单击实例名称,在“概览”页面获取的弹性公网IP。绑定弹性公网IP的操作,请参见FlexusRDS for PostgreSQL实例绑定和解绑弹性公网IP

        使用弹性公网IP连接数据库实例时,必须要将弹性公网IP和5432端口加入安全组“sg-default-smb”的入方向规则。具体操作,请参见添加安全组规则

      <port>

      5432。

      <user>

      root。

      <datastore>

      postgres。

    • Flexus云服务器X实例和FlexusRDS for PostgreSQL实例在不同VPC下。
      表2 参数说明

      参数

      说明

      <host>

      不同VPC下内网不通,使用公网连接。

      单击实例名称,在“概览”页面获取的弹性公网IP。绑定弹性公网IP的操作,请参见FlexusRDS for PostgreSQL实例绑定和解绑弹性公网IP

      使用弹性公网IP连接数据库实例时,必须要将弹性公网IP和5432端口加入安全组的入方向规则。具体操作,请参见添加安全组规则

      <port>

      5432。

      <user>

      root。

      <datastore>

      postgres。

  4. 出现如下提示时,输入root账号对应的密码。
    Enter password:

通过源码连接FlexusRDS for PostgreSQL实例(对版本没有限制)

  1. 登录与FlexusRDS实例在同一区域下的Flexus云服务器X实例
  2. 安装PostgreSQL客户端。

    源码安装方式,该安装方式对RDS for PostgreSQL实例的版本以及ECS的操作系统没有限制。

    下面以Huawei Cloud EulerOS 2.0镜像的ECS为例,安装PostgreSQL 16.4版本客户端。

    图3 查看ECS镜像
    1. 要支持SSL,需要在ECS上提前下载openssl。
      sudo yum install -y openssl-devel
    2. 官网获取代码下载链接,使用wget直接下载安装包或者下载到本地后上传到ECS上。
      wget https://ftp.postgresql.org/pub/source/v16.4/postgresql-16.4.tar.gz
    3. 解压安装包。
      tar xf postgresql-16.4.tar.gz
    4. 编译安装。
      cd postgresql-16.4
      ./configure --without-icu --without-readline --without-zlib --with-openssl
      make -j 8 && make install

      不指定--prefix,表示默认路径为“/usr/local/pgsql”,因为只安装客户端采用最简安装。

      图4 编译安装
    5. 配置环境变量,在“/etc/profile”文件中添加以下内容。
      export PATH=/usr/local/pgsql/bin:$PATH
      export LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LD_LIBRARY_PATH
      source /etc/profile
    6. 测试psql是否可使用。
      psql -V
      图5 测试psql可用
  3. 在Flexus云服务器X实例上执行以下命令连接FlexusRDS for PostgreSQL实例。

    psql --no-readline -U<user>-h<host>-p<port>-d<datastore>-W

    示例:

    psql --no-readline -U root -h 192.168.0.44 -p 5432 -d postgres -W

    • Flexus云服务器X实例和FlexusRDS for PostgreSQL实例默认在同一个VPC、子网、安全组下。对应网络信息:vpc-default-smb、subnet-default-smb、sg-default-smb。
      表3 参数说明

      参数

      说明

      <host>

      内网连接和公网连接任选一种,推荐使用内网连接,安全性更高。

      • 内网连接(推荐):单击实例名称,在“概览”页面获取的内网地址。
      • 公网连接:单击实例名称,在“概览”页面获取的弹性公网IP。绑定弹性公网IP的操作,请参见FlexusRDS for PostgreSQL实例绑定和解绑弹性公网IP

        使用弹性公网IP连接数据库实例时,必须要将弹性公网IP和5432端口加入安全组“sg-default-smb”的入方向规则。具体操作,请参见添加安全组规则

      <port>

      5432。

      <user>

      root。

      <datastore>

      postgres。

    • Flexus云服务器X实例和FlexusRDS for PostgreSQL实例在不同VPC下。
      表4 参数说明

      参数

      说明

      <host>

      不同VPC下内网不通,使用公网连接。

      单击实例名称,在“概览”页面获取的弹性公网IP。绑定弹性公网IP的操作,请参见FlexusRDS for PostgreSQL实例绑定和解绑弹性公网IP

      使用弹性公网IP连接数据库实例时,必须要将弹性公网IP和5432端口加入安全组的入方向规则。具体操作,请参见添加安全组规则

      <port>

      5432。

      <user>

      root。

      <datastore>

      postgres。

  4. 出现如下提示时,输入root账号对应的密码。
    Enter password:

相关文档