• Linux 下 FreeSWITCH 远程连接使用 MySQL 替代 SQLite


    1. 安装unixODBC 和 MySQL ODBC Connector

    yum install unixODBC-devel mysql-connector-odbc


    2. 创建软连接

    ln -s libmyodbc5.so libmyodbc.so


    3. 在远程MySQL服务器中创建数据库“freeswitch” ,创建有密码用户


    4. 添加如下 DSN 到 /etc/odbc.ini和 /root/.odbc.ini

    [freeswitch]
    DRIVER   = MySQL
    SERVER   = 192.168.0.104
    PORT     = 3306
    DATABASE = freeswitch
    USER     = fsu
    PASSWORD = 123456
    OPTION   = 3


    5.执行如下命令测试连接:

    isql freeswitch -v

    报错:

    [S1000][unixODBC][MySQL][ODBC 5.1 Driver]Host '192.168.0.105' is not allowed to connect to this MySQL server
    [ISQL]ERROR: Could not SQLConnect


    6.远程MySQL 服务器下,进入“mysql”数据库执行如下SQL命令

    update user set host = '%' where user = 'root';
    再执行如下命令

    isql freeswitch 用户名 密码 -v

    返回

    +---------------------------------------+
    | Connected!                            |
    |                                       |
    | sql-statement                         |
    | help [tablename]                      |
    | quit                                  |
    |                                       |
    +---------------------------------------+

    7. 下载最新版freeswitch:http://files.freeswitch.org/

    8. 解压,配置,编译 FreeSWITCH

    tar -xf freeswitch-1.2.5.3.tar.bz2

    ./configure --enable-core-odbc-support

    make&& make install


    9./usr/local/freeswitch执行如下命令

    grep -ir dsn .


    查出全部希望使用MySQL 替代SQLite 的功能的配置文件

    显示如下

    ...

    ./autoload_configs/switch.conf.xml:    <param name="core-db-dsn" value="freeswitch:fsu:123456" />
    ./autoload_configs/db.conf.xml.bak:    <!--<param name="odbc-dsn" value="dsn:user:pass"/>-->   
    ./autoload_configs/cidlookup.conf.xml:    <param name="odbc-dsn" value="phone:phone:phone"/>
    ./autoload_configs/voicemail.conf.xml:      <!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
    ./autoload_configs/callcenter.conf.xml:    <!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
    ./autoload_configs/nibblebill.conf.xml:    <param name="db_dsn" value="bandwidth.com"/>
    ./autoload_configs/db.conf.xml:    <param name="odbc-dsn" value="freeswitch:fsu:123456"/>

    ...

    这些功能都可以改用MySQL修改这些配置文件中的参数value


    <param name="core-db-dsn"value="dsn:user:pass"/>

    <param name="odbc-dsn"value="phone:phone:phone"/>


    10.运行FreeSWITCH

    启动过程中自动在已建的freeswitch数据库中创建表


    提醒:在Linux 下修改重要文件之前,先要备份,如 cp xxx.conf xxx.conf.bak

    参考文档:
    Using ODBC in the core
    http://wiki.freeswitch.org/wiki/Using_ODBC_in_the_core
  • 相关阅读:
    多种开源OLAP引擎测评报告
    Go的单元测试
    C#的List实现IComparer接口排序实例
    Java 多线程:(一)
    android:theme
    android:excludeFromRecents="true"
    RK:主屏幕
    Gatsby xinhua log boork(三)
    RK:Provision.apk、SettingsProvider的分析、使用
    Camera(一):查看Camera设备详细信息
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13318480.html
Copyright © 2020-2023  润新知