freeswitch使用mysql替代原有数据库,多freeswitch使用同一mysql

本文详细介绍如何在Debian 8系统中用MySQL替换SQLite作为FreeSWITCH的数据库,包括安装配置MySQL、ODBC,以及调整FreeSWITCH相关设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实际项目中可能会需要用mysql替代原有的sqlite,具体方法如下(debain 8系统):


在数据库服务器上安装mysql,并且允许远程连接,创建一个名为freeswitch的数据库。

在允许远程连接的时候,如果连接不上,请检查权限和/etc/mysql/my.cnf中的bind-address是否打开,如果打开着,请注释掉这一行。


在freeswitch服务器上面安装odbc

apt-get install unixodbc-dev
apt-get install libmyodbc


添加DSN

修改下面两个文件,添加如下内容:
sudo vi /etc/odbc.ini
[freeswitch]
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
SERVER = xxx.xxx.xxx.xxx mysql服务器IP地址
PORT = 3306
DATABASE = freeswitch
OPTION = 67108864
USER = root
PASSWORD = 123456

sudo vi /etc/odbcinst.ini
[MySQL]
Description = MySQL driver
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
UsageCount = 1
FileUsage = 1
Threading = 0

测试连接是否正常

isql freeswitch -v

如下显示为正常连接:
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+

下面就是下载freeswitch源码并编译安装,具体参照上一篇freeswitch的编译安装,区别是在./configure步骤时,

加上允许odbc的参数:./configure --enable-core-odbc-support  其他相同。


安装完成之后,进入freeswitch目录,修改需要使用mysql的模块的配置文件

进入/usr/local/freeswitch

搜索 dsn 来查找哪些配置文件中有这个项目

grep -ir dsn

会找到类似下面这个的配置文件,之后将配置文件中的dsn项目修改成我们上面添加的mysql的dsn就可以了。

switch.conf.xml: <param name="core-db-dsn"value="dsn:user:pass"/>

switch.conf.xml: <param name="core-db-dsn" value="freeswitch:root:123456" />

### 配置 FreeSWITCH 使用 OpenSIPS 数据库 为了使 FreeSWITCH 能够使用由 OpenSIPS 管理的同一数据库中的用户管理数据,需执行一系列配置操作。这涉及安装必要的软件包并调整 FreeSWITCH 的设置。 #### 安装依赖项 首先,在服务器上安装 MDB2 和 MDB2 MySQL 支持: ```bash pear install mdb2 pear install mdb2#mysql ``` 这些命令确保了 PHP 可以通过 PEAR 包管理系统访问 MySQL 数据库[^1]。 #### 获取 OpenSIPS 控制面板源码 接着获取用于管理和配置 OpenSIPS 的控制面板源代码,并放置于 Web 服务目录下: ```bash cd /var/www svn co https://opensips-cp.svn.sourceforge.net/svnroot/opensips-cp/trunk opensips-cp ``` 此步骤提供了图形界面来简化对共享数据库的操作和维护工作。 #### 修改数据库连接参数 编辑 `config/db.inc.php` 文件以指定正确的数据库连接信息,包括主机名、用户名、密码以及要使用的具体数据库名称: ```php vi config/db.inc.php ``` 在此文件中定义好相应的变量后保存更改。这样做的目的是为了让 OpenSIPS CP 正确地指向目标数据库实例。 对于 FreeSWITCH 来说,则需要修改其模块配置文件(通常位于 `/etc/freeswitch/autoload_configs/mod_xml_cdr.conf.xml` 或其他相关位置),以便能够读取来自该公共数据库的信息。具体的 XML 片段可能如下所示: ```xml <configuration name="mod_xml_cdr" description="XML CDR"> <settings> <!-- Other settings --> <param name="connection-string" value="mysql://username:password@localhost/database_name"/> </settings> </configuration> ``` 上述片段展示了如何设定 FreeSWITCH 连接到外部 SQL 数据库的方式;其中应替换实际存在的凭证与路径细节。 完成以上步骤之后重启两个系统的相应组件即可生效新配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大头菜馅馒头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值