DBMNG数据库管理与应用

所有存在都是独创。
当前位置:首页 > MySQL > 应用案例

FreeSWITCH使用MySQL数据库

FreeSWITH 默认使用 sqlite 作为数据库,但是很多时候我们需要使用 MySQL 等数据库作为服务器数据库使用,比如集群主备的时候,可以方便从数据库读取信息。这里以 MySQL 为例介绍相关配置

主备的集群安装见: FreeSwitch高可用解决方案

1. 安装ODBC库

yum -y install mysql-connector-odbc.x86_64 unixODBC-devel.x86_64

2. 配置ODBC

vi /etc/odbc.ini  #该文件默认没有,直接新建保存


[freeswitch]
Description=FreeSwitch MySQL database
Driver=MySQLSERVER =192.168.2.190PORT =3306DATABASE = freeswitch
OPTION  =67108864CHARSET = UTF8
USER = root
PASSWORD = WenFei@123Threading = 0

cat /etc/odbcinst.ini  #ODBC装完后就已经产生

# Example driver definitions

# Driver from the postgresql-odbc package
# Setup from the unixODBC package
[PostgreSQL]
Description     = ODBC for PostgreSQL
Driver          = /usr/lib/psqlodbcw.so
Setup           = /usr/lib/libodbcpsqlS.so
Driver64        = /usr/lib64/psqlodbcw.so
Setup64         = /usr/lib64/libodbcpsqlS.so
FileUsage       = 1# Driver from the mysql-connector-odbc package
# Setup from the unixODBC package
[MySQL]
Description     = ODBC for MySQL
Driver          = /usr/lib/libmyodbc5.so
Setup           = /usr/lib/libodbcmyS.so
Driver64        = /usr/lib64/libmyodbc5.so
Setup64         = /usr/lib64/libodbcmyS.so
FileUsage       = 1

3. 安装数据库

如果你的服务器没有安装 MySQL 可以按照下述方法安装,如果已经有了数据库,则跳过这个步骤。

初始化数据库后创建 freeswitch 数据库 create database freeswitch;
接下来测试 ODBC 是否正常

isql -v freeswitch

如果登陆成功,那么就说明是OK的。此时的 MySQL 数据库里面的表还是空的。

4. 重新编译 FreeSWITCH

回到编译目录,重新编译,加入 --enable-core-odbc-support 参数。

./configure --enable-core-odbc-supportmake && make install

5. 配置 FreeSWITCH xml

这里的数据库账号 root 假设密码为 123456

找到相应的文件按照如下配置:


<!-- vi conf/autoload_configs/db.conf.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/autoload_configs/switch.conf.xml --><param name="core-db-dsn" value="freeswitch:root:123456" /><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/autoload_configs/voicemail.conf.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/autoload_configs/callcenter.conf.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/sip_profiles/external.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/sip_profiles/internal.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/sip_profiles/internal-ipv6.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/sip_profiles/external-ipv6.xml --><param name="odbc-dsn" value="freeswitch:root:123456"/><!-- vi conf/autoload_configs/fifo.conf.xml --><settings>
    <param name="delete-all-outbound-member-on-startup" value="false"/>
    <param name="odbc-dsn" value="freeswitch:root:123456"/></settings><!-- vi conf/vars.xml --><X-PRE-PROCESS cmd="set" data="json_db_handle=odbc://freeswitch:root:123456"/>

重启 FreeSWITCH 基本流程就完成了。 

6. 验证FreeSWITCH

程序起来后,发现数据库有表有信息了!

 

from:https://www.cnblogs.com/cash/p/13331299.html


本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号