转自 80000hz.com
freeswitch 使用mysql替换默认的sqlite
No Reply , Posted in 默认分类 on January 14, 2014
目标
使用mysql替换掉freeswitch默认的sqlite数据库
环境
Centos6.x freeswitch 1.2.16
安装odbc和mysql-connector
yum install mysql-connector-odbc.x86_64 unixODBC-devel.x86_64
配置DSN
创建数据库realtime
打开/etc/odbc.ini
添加内容如下
[MYSQLTP]Description=MySQL realtime database Driver=MySQL SERVER =172.16.1.195 PORT =3306 DATABASE = realtime OPTION =67108864 CHARSET = UTF8
测试数据库是否配置成功
isql -v MYSQLTP root '123456'
配置模块DSN
配置主程序和部分模块使用ODBC, 如果有新加模块, 请参考以下自行配置.
1.修改conf/autoload_configs中的db.conf.xml文件
<param name="odbc-dsn" value="MYSQLTP:root:123456"/>
2. 修改conf/autoload_configs中的switch.conf.xml
修改字段
<param name="core-db-dsn" value="MYSQLTP:root:123456" />
添加
<param name="odbc-dsn" value="MYSQLTP:root:123456"/>
3.修改conf/autoload_configs中的voicemail.conf.xml
修改字段<param name="odbc-dsn" value="MYSQLTP:root:123456"/>
4.修改conf/autoload_configs中的callcenter.conf.xml
<param name="odbc-dsn" value="MYSQLTP:root:123456"/>
5.修改conf/sip_profiles中的internal.xml 和external.xml,internal-ipv6.xml
<param name="odbc-dsn" value="MYSQLTP:root:123456"/>
备注: 其他模块请搜索odbc-dsn.
测试
rm -f /usr/local/freeswitch/db/*.db
./freeswitch -c -nonat -rp
查看控制台是否有错误
进入目录/usr/local/freeswitch/db
查看是否有新的文件生成, 如果有则确定文件是哪个模块生成, 修改模块DSN配置.