将 3CX 连接到独立的 PostgreSQL 和 Grafana
介绍
本指南提供了一个简洁的过程,将您的 3CX 电话系统连接到独立的 PostgreSQL 数据库,以便与 Grafana 一起使用进行数据可视化和报告。
步骤 1:创建 PostgreSQL
- 安装 PostgreSQL
- Windows:下载安装程序 https://www.postgresql.org/download/windows/并按照向导操作。
- Linux(Debian):sudo apt update && sudo apt install -y postgresql Verify cluster: pg_lsclusters. Create if needed: sudo pg_createcluster <major-version> main --start.
记住PostgreSQL超级用户密码和安装详细信息(默认端口 5432)。
- 创建 PostgreSQL 用户和数据库
- Windows:打开 psql。
- 然后执行 SQL:
CREATE ROLE your_user WITH LOGIN PASSWORD 'your_password';
CREATE DATABASE your_db OWNER your_user;
- Linux(Debian):
sudo -u postgres createuser <username> -P
sudo -u postgres createdb <dbname> -O <username>
将username替换成你的用户名, 也包括dbname替换成你的db名称还包括你的your_password
- 允许远程连接
- 编辑 postgresql配置文件:
- Windows: 通常在 C:\Program Files\PostgreSQL\<version>\data\postgresql.conf. 设置 listen_addresses = '*'.
- Linux (Debian): 通常在 /etc/postgresql/<version>/main/postgresql.conf. 设置 listen_addresses = '*'.
- 编辑 pg_hba.conf:
- Windows: 通常在 C:\Program Files\PostgreSQL\<version>\data\pg_hba.conf.
Add: host your_db your_user <allowed_ip>/<cidr> scram-sha-256 - Linux (Debian): /etc/postgresql/<version>/main/pg_hba.conf.
Add: host <dbname> <username> <allowed_ip>/<cidr> scram-sha-256
如果需要,请替换 <allowed_ip>/<cidr> 以限制访问,例如,允许任何 IP 替换为 0.0.0.0/0。)
- 重新启动 PostgreSQL 服务:
- Windows: net stop postgresql-x64-<version> then net start postgresql-x64-<version> (as administrator).
- Linux (Debian): sudo systemctl restart postgresql
- 授予数据库权限
- Windows 和 Linux:打开 psql(Windows)或sudo -u postgres psql(Linux)并运行 SQL:
GRANT ALL PRIVILEGES ON DATABASE your_db TO your_user;
使用您配置的数据库和用户名。
或者:通过脚本快速配置
- Linux:以 root 身份运行:sudo bash -c "$(wget -qO-https://downloads-global.3cx.com/downloads/misc/postgresql/linuxwizard.zip)”按照向导的提示进行操作。
- Windows :安装 PostgreSQL(参见 Windows 安装步骤 ),以管理员身份打开 PowerShell 并运行:https://downloads-global.3cx.com/downloads/misc/postgresql/windowswizard.zip并按照向导的提示进行操作。
请注意,这些脚本可能没有得到积极维护,其使用由您自行承担责任。使用管理权限运行脚本时请务必小心。
步骤 2:在 3CX 上配置数据连接器
- 在 3CX 上,导航至管理控制台 > 集成 > 数据连接器
- 选择 ”PostgreSQL 数据库"并输入以下内容:
- 主机:安装 PostgreSQL 的主机的 IP 地址或 FQDN(如果可用)。
- 端口:数据库端口(默认值:5432)。
- 数据库名称:您在步骤 1 中创建的数据库的名称。
- 用户名:您在步骤 1 中创建的新用户的用户名。
- 密码:您为新用户配置的密码
- 频率:设置从 PBX 到 PostgreSQL 的数据传输频率。
- 保存配置并单击“测试”按钮来验证与 PostgreSQL 数据库的连接,并确认您收到成功消息。如果测试失败,请仔细检查主机、端口、数据库名称、用户名和密码。 另外,请验证 PostgreSQL 主机或网络上的任何防火墙是否允许来自您的 PBX IP 的连接。
请注意:您必须拥有 16SC+ 许可证才能使用 3CX 数据连接器。
步骤3:将 Grafana 连接到 PostgreSQL 实例
- 登录您的 Grafana 实例(例如,grafana.com 或您自托管的 Grafana)。
- 转到 Grafana 配置菜单(齿轮图标)并单击“数据源" 并点击 "添加数据源“。
- 搜索并选择“PostgreSQL“。
- 在“连接”下配置数据源,输入以下详细信息:
- Host:输入 PostgreSQL 的 IP 或 FQDN 和端口,格式为:IP/FQDN:5432
- Database:您在步骤 1 中创建的数据库的名称。
- User:您在步骤 1 中创建的新用户的用户名
- Password:您为新用户配置的密码
- 点击 ”Save & test“并确认您收到了”Data source is working“消息。如果遇到错误,请仔细检查连接详细信息和 SSL 配置。另外,验证 PostgreSQL 主机或网络上的任何防火墙是否允许来自 Grafana IP 的连接。
另请参阅
- 将 3CX 连接到Google BigQuery 和 Grafana
- 将 3CX 连接到AWS RDS PostgreSQL 和 Grafana
上次更新
本文件最后更新于 2025 年 5 月 15 日
