跳转到主要内容

远程数据库服务器

简介

FASTPANEL® 允许连接外部数据库服务器:MySQL 或 PostgreSQL;从而能够使用位于外部服务器上的数据库。

重要

外部数据库无法添加到备份计划中,并且 FASTPANEL® 不提供外部数据库服务器的设置管理功能

本文介绍了一个在主服务器上的 FASTPANEL® 中连接外部 DBMS 服务器的示例。

说明

本文中的示例使用名义 IP 1.1.1.1 作为安装了 FASTPANEL® 的主服务器地址。 实际的外部服务器地址并不重要,但除本文给出的示例外,它与 1.1.1.1 无关

MySQL 数据库服务器连接

要将外部 MySQL 服务器连接到 FASTPANEL®,请按以下步骤操作:

  1. 执行以下查询将创建一个外部 MySQL 服务器用户,并授予其允许外部连接和数据库管理的权限。 要执行此操作,您必须以管理员用户身份登录 mysql:

    CREATE USER 'FASTPANEL_USER'@'FASTPANEL_IP' IDENTIFIED BY 'PASSWORD';
    • FASTPANEL_USER - 将用于 FASTPANEL® 连接到该服务器的用户名
    • FASTPANEL_IP - 安装了 FASTPANEL® 的服务器的 IP 地址
    • PASSWORD - 将用于 FASTPANEL® 连接到该服务器的密码

    查询示例:

    FASTPANEL 中创建远程用户的 MySQL 查询示例

  2. 执行以下查询,为创建的用户授予管理权限

    GRANT ALL PRIVILEGES ON *.* TO FASTPANEL_USER@'FASTPANEL_IP' WITH GRANT OPTION;
    • FASTPANEL_USER - 将用于 FASTPANEL® 连接到该服务器的用户名。
    • FASTPANEL_IP - 安装了 FASTPANEL® 的服务器的 IP 地址

    查询示例:

    FASTPANEL 中为远程用户授予权限的 MySQL 查询示例

  3. 使 MySQL 监听所有网络接口。 这需要编辑 MySQL 配置文件,或向其中添加以下行(最常见的是 /etc/mysql/my.cnf,但也可能不同):

    bind_address = *

    要使新设置生效,需要重启 MySQL。 对于 systemd 类型的系统,可以通过执行以下命令来实现:

    systemctl restart mysql

要完成设置,请在服务器上的 FASTPANEL® 中执行以下操作

  1. 前往“Settings” → “Databases

    FASTPANEL 中的数据库管理菜单

  2. 点击“Database servers

    FASTPANEL 中的数据库服务器菜单

  3. 点击“Add a server”按钮,然后取消选中“Local server”复选框,并使用前面步骤中用于连接外部服务器的数据填写各字段

    在 FASTPANEL 中添加数据库服务器 在 FASTPANEL 中添加 MySQL 服务器

如果一切操作正确,“Database servers”页面上将出现一行包含已添加服务器信息的新条目。 之后,该服务器将可用于创建数据库。

PostgreSQL 数据库服务器连接

要将外部 PostgreSQL 服务器连接到 FASTPANEL®,请按以下步骤操作:

  1. 执行以下查询将创建一个外部 PostgreSQL 服务器用户,并授予其允许外部连接和数据库管理的权限。 要执行此操作,您必须以管理员用户身份登录 psql:

    CREATE USER FASTPANEL_USER WITH ENCRYPTED PASSWORD 'USERPASSWORD' SUPERUSER BYPASSRLS REPLICATION CREATEDB CREATEROLE INHERIT LOGIN;
    • FASTPANEL_USER - 将用于 FASTPANEL® 连接到该服务器的用户名
    • USERPASSWORD - 将用于 FASTPANEL® 连接到该服务器的密码

    查询示例:

    FASTPANEL 中创建远程用户的 PostgreSQL 查询示例

  2. 通过将以下行添加到 postgresql 配置文件 pg_hba.conf 中,为创建的用户授予外部连接权限

    host all FASTPANEL_USER 0.0.0.0/0 md5
    host all FASTPANEL_USER ::/0 md5

    文件示例:

    PostgreSQL 权限配置示例

  3. 使 PostgreSQL 监听所有网络接口。 这需要在 PostgreSQL 配置文件中添加以下行(最常见的是 /etc/postgresql/VERSION/main/postgresql.conf):

    listen_addresses = '*'

    需要重启 PostgreSQL 才能使设置生效。 在 systemd 类型的系统中,可以通过执行以下命令完成:

    systemctl restart postgresql

要完成设置,请在主服务器上的 FASTPANEL® 中执行以下操作:

  1. 前往“Settings” → “Databases

    FASTPANEL 中的数据库管理菜单

  2. 点击“Database servers

    FASTPANEL 中的数据库服务器菜单

  3. 点击“Add a server”按钮

    在 FASTPANEL 中添加数据库服务器

  4. 取消选中“Local server”复选框,并使用前面步骤中用于连接远程服务器的数据填写各字段

    在 FASTPANEL 中添加 PostgreSQL 服务器

如果一切操作正确,“Database servers”页面上将出现一行包含已添加服务器信息的新条目。 之后,该服务器将可用于创建数据库。