freeswitch改sqlite为mysql(mariadb)
freeswitch改内置数据库sqlite为mysql(mariadb)
freeswitch自带的sqlite支撑不了太多用户,会提示数据库繁忙。遂弃用自带的sqlite,改用mysql
坑
centos7.9上编译mod_mariadb不成功,缺少某些支持,各种想办法没解决
遂改用mod_odbc连接mariadb
安装配置mariadb5.X
安装
......
配置
......
安装配置系统odbc
安装
......
修改/etc/odbc.ini
[freeswitch]
Driver = MySQL
SERVER = localhost
PORT = 3306
DATABASE = freeswitch
OPTION = 67108864
USER = root
PASSWORD = xxxxx
测试
isql freeswitch
freeswitch编译mod_odbc模块
进入源码目录
...
vim modules.conf
取消mod_odbc的注释
编译
make mod_odbc-install
修改启动加载配置文件
vim autoload_configs/modules.conf.xml
添加 <load module="mod_format_cdr"/>
修改数据库配置文件定数据库
根据实际情况来,我这里修改了10个配置文件:
autoload_configs/callcenter.conf.xml
autoload_configs/cidlookup.conf.xml
autoload_configs/db.conf.xml
autoload_configs/cat pocketsphinx.conf.xml
autoload_configs/cat sndfile.conf.xml
autoload_configs/nibblebill.conf.xml
autoload_configs/voicemail.conf.xml
autoload_configs/odbc.conf.xml
autoload_configs/switch.conf.xml
修改或添加:
<param name="odbc-dsn" value="数据库名:账号:密码"/>
校验
重启freeswitch
然后查看mariadb数据库已有数据,
.../freeswitch/db下已无数据.