• [转]FreeSwitch1.10版本安装及内置mariadb(mysql)使用记录


    因为FS现在停止了1.8(更不要说1.6),当前是1.10版本,于是对这个版本进行了安装配置的测试,小记如下:
    1、初步安装测试,1.10版本在centos7.7下可以安装,运行OK
    2、1.10版本的FS已经内置了mariadb(mysql)的数据库支持,可以不再用ODBC来启用mysql了(按FS官方的文档,1.10版本主要就是优化了数据库)

    为测试这个版本,并主要测试使用内置mariadb数据库,进行的安装记录如下:

    =====使用 yum 安装=====

    1、centos7.7 最小安装

    2、这是centos7下面对 delta的补充安装,并安装wget备用

    yum provides '*/applydeltarpm'
    yum install deltarpm wget

    3、直接使用yum安装Freeswitch,仅安装英文语言包,启用xml-cdr和mariadb(mysql)

    yum install -y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release
    yum install -y freeswitch-config-vanilla freeswitch-lang-en freeswitch-sounds-en-* freeswitch-sounds-music-* freeswitch-lua freeswitch-xml-cdr freeswitch-database-mariadb
    systemctl enable freeswitch

    4、使用内置mariadb数据库

    注意,如果使用FS的mariadb支持就不能使用最新的mariadb,要用centos自带的,否则mysql C connector版本不兼容!

    yum install -y mariadb mariadb-sever
    service mariadb start
    systemctl enable mariadb
    mysql_secure_installation 

    上面修改root用户密码,后面需要创建freeswitch的空数据库(建议用默认字符集)

     5、修改FS配置文件,启用mariadb

    里面默认启用的是pgsql,mariadb的被注释了,启用即可

    vi /etc/freeswitch/autoload_configs/pre_load_modules.conf.xml

     如果没有这个文件,参考:

    <configuration name="pre_load_modules.conf" description="Modules">
      <modules>
        <!-- Databases -->
        <load module="mod_mariadb"/>
        <!-- <load module="mod_pgsql"/> -->
      </modules>
    </configuration>

    6、修改FS配置文件,让FS的核心使用mariadb(mysql)数据库

    需修改 core-db-dsn 或 odbc-dsn 数据库连接的相关信息,按上面自己设置的内容连接,

    连接串的格式为:

    mariadb://Server=localhost;Database=freeswitch;Uid=freeswitch;Pwd=pass;
    vi /etc/freeswitch/autoload_configs/switch.conf.xml
    vi /etc/freeswitch/autoload_configs/db.conf.xml
    vi /etc/freeswitch/sip_profiles/internal.xml
    vi /etc/freeswitch/sip_profiles/internal-ipv6.xml

    7、启动FS

    service freeswitch start

    小记说明:测试运行正常,安装后配置文件中 mod_b64、mod_png、mod_av 这几个默认存在的模块都不可用,而且FS也没有相关的包,

    开发中需使用的ESL库(libesl.a)也不可用(没有相关包,安装了 freeswitch.devel 包也不包含,必须自己编译,

    所以,还是要下载源代码,又回到原点了)...,考虑到实际使用,看来源码编译安装还是不可替代的!

    所以吗, yum安装,仅对一般使用者,对有扩展开发的还是不行!!

    ===== 源代码编译 =====

    1、centos7.7 最小安装

    2、FS的源代码编译基础环境

    这里使用yum-builddep工具,基于FS的yum包依赖库批量安装,简单了很多:

    yum install -y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release yum-utils
    yum-builddep -y freeswitch
    yum install -y yum-plugin-ovl centos-release-scl rpmdevtools git
    yum install -y devtoolset-4-gcc*
    scl enable devtoolset-4 'bash'

    3、下面这个是对mod_av的补充

    mod_av需要libavformat-dev,但centos没有,通过第三方yum库安装ffmpeg-devel包实现(yum的FS版本里面是没有mod_av、mod_b64、mod_png的,所以上面的安装也就没有):

    rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
    rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
    yum install -y ffmpeg-devel

    4、开始安装

    cd /usr/local/src
    git clone -b v1.10 https://github.com/signalwire/freeswitch.git freeswitch
    cd /usr/local/src/freeswitch
    ./bootstrap.sh -j
    ./configure --enable-portable-binary 
    --prefix=/usr --localstatedir=/var --sysconfdir=/etc 
    --with-gnu-ld --with-python --with-erlang --with-openssl 
    --enable-core-odbc-support --enable-zrtp
    make
    make -j install
    make -j cd-sounds-install
    make -j cd-moh-install

     不过我还是 习惯 所有 mod conf bin log db 等等 文件夹 都放在一起, 比如: /usr/local/freeswtich/

    5、OK,又回到了熟悉的状态,yum没有的模块都回来了

    6、对FS1.10新添加的mariadb模块的编译安装

    cd /usr/local/src/freeswitch/src/mod/databases/mod_mariadb
    make
    make install

    [转自:http://blog.sina.com.cn/s/blog_539d6e0c01032c2q.html]

    ------------恢复内容开始------------

    因为FS现在停止了1.8(更不要说1.6),当前是1.10版本,于是对这个版本进行了安装配置的测试,小记如下:
    1、初步安装测试,1.10版本在centos7.7下可以安装,运行OK
    2、1.10版本的FS已经内置了mariadb(mysql)的数据库支持,可以不再用ODBC来启用mysql了(按FS官方的文档,1.10版本主要就是优化了数据库)

    为测试这个版本,并主要测试使用内置mariadb数据库,进行的安装记录如下:

    =====使用 yum 安装=====

    1、centos7.7 最小安装

    2、这是centos7下面对 delta的补充安装,并安装wget备用

    yum provides '*/applydeltarpm'
    yum install deltarpm wget

    3、直接使用yum安装Freeswitch,仅安装英文语言包,启用xml-cdr和mariadb(mysql)

    yum install -y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release
    yum install -y freeswitch-config-vanilla freeswitch-lang-en freeswitch-sounds-en-* freeswitch-sounds-music-* freeswitch-lua freeswitch-xml-cdr freeswitch-database-mariadb
    systemctl enable freeswitch

    4、使用内置mariadb数据库

    注意,如果使用FS的mariadb支持就不能使用最新的mariadb,要用centos自带的,否则mysql C connector版本不兼容!

    yum install -y mariadb mariadb-sever
    service mariadb start
    systemctl enable mariadb
    mysql_secure_installation 

    上面修改root用户密码,后面需要创建freeswitch的空数据库(建议用默认字符集)

     5、修改FS配置文件,启用mariadb

    里面默认启用的是pgsql,mariadb的被注释了,启用即可

    vi /etc/freeswitch/autoload_configs/pre_load_modules.conf.xml

     如果没有这个文件,参考:

    <configuration name="pre_load_modules.conf" description="Modules">
      <modules>
        <!-- Databases -->
        <load module="mod_mariadb"/>
        <!-- <load module="mod_pgsql"/> -->
      </modules>
    </configuration>

    6、修改FS配置文件,让FS的核心使用mariadb(mysql)数据库

    需修改 core-db-dsn 或 odbc-dsn 数据库连接的相关信息,按上面自己设置的内容连接,

    连接串的格式为:

    mariadb://Server=localhost;Database=freeswitch;Uid=freeswitch;Pwd=pass;
    vi /etc/freeswitch/autoload_configs/switch.conf.xml
    vi /etc/freeswitch/autoload_configs/db.conf.xml
    vi /etc/freeswitch/sip_profiles/internal.xml
    vi /etc/freeswitch/sip_profiles/internal-ipv6.xml

    7、启动FS

    service freeswitch start

    小记说明:测试运行正常,安装后配置文件中 mod_b64、mod_png、mod_av 这几个默认存在的模块都不可用,而且FS也没有相关的包,

    开发中需使用的ESL库(libesl.a)也不可用(没有相关包,安装了 freeswitch.devel 包也不包含,必须自己编译,

    所以,还是要下载源代码,又回到原点了)...,考虑到实际使用,看来源码编译安装还是不可替代的!

    所以吗, yum安装,仅对一般使用者,对有扩展开发的还是不行!!

    ===== 源代码编译 =====

    1、centos7.7 最小安装

    2、FS的源代码编译基础环境

    这里使用yum-builddep工具,基于FS的yum包依赖库批量安装,简单了很多:

    yum install -y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release yum-utils
    yum-builddep -y freeswitch
    yum install -y yum-plugin-ovl centos-release-scl rpmdevtools git
    yum install -y devtoolset-4-gcc*
    scl enable devtoolset-4 'bash'

    3、下面这个是对mod_av的补充

    mod_av需要libavformat-dev,但centos没有,通过第三方yum库安装ffmpeg-devel包实现(yum的FS版本里面是没有mod_av、mod_b64、mod_png的,所以上面的安装也就没有):

    rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
    rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
    yum install -y ffmpeg-devel

    4、开始安装

    cd /usr/local/src
    git clone -b v1.10 https://github.com/signalwire/freeswitch.git freeswitch
    cd /usr/local/src/freeswitch
    ./bootstrap.sh -j
    ./configure --enable-portable-binary 
    --prefix=/usr --localstatedir=/var --sysconfdir=/etc 
    --with-gnu-ld --with-python --with-erlang --with-openssl 
    --enable-core-odbc-support --enable-zrtp
    make
    make -j install
    make -j cd-sounds-install
    make -j cd-moh-install

     不过我还是 习惯 所有 mod conf bin log db 等等 文件夹 都放在一起, 比如: /usr/local/freeswtich/

    5、OK,又回到了熟悉的状态,yum没有的模块都回来了

    6、对FS1.10新添加的mariadb模块的编译安装

    cd /usr/local/src/freeswitch/src/mod/databases/mod_mariadb
    make
    make install

    [转自:http://blog.sina.com.cn/s/blog_539d6e0c01032c2q.html]

    ======亲自尝试(非转载)======

    还有以下mod的conf要改(我用到的)

    autoload_configs/callcenter.conf.xml
    autoload_configs/fifo.conf.xml
    autoload_configs/voicemail.conf.xml
    sip_profiles/external.xml
    sip_profiles/external-ipv6.xml

    咋知道有这么些要改的??

    简单,db文件夹下删不掉的-->你懂的...

    只有switch.conf 中的是`core-db-dsn`参数

    其他的都是`odbc-dsn`参数 :)

    没看到有<!-- -->注释的预置的,就自己加!

     然后第一次启动会报一些错,因为没表呗(嗯,数据库,用户要先创建,不说), 启动完后, 重新启动一次

    不过第N次启动任然会报错 都是创建 index 重复的错误.....

     然后还有个错误,mod_db报的,没研究了:

    可见非SQLite的coredb支持任然不完善吧,O(∩_∩)O哈哈~ 

  • 相关阅读:
    mdk3 工具使用-表白神器
    Crunch黑客神器-创造个性字典
    centos 自动挂载ISO
    渗透测试工具Nmap从初级到高级
    mui 点击长按复制文本
    JavaScript倒计时并刷新页面
    javascript单一复制粘贴
    jquery定义链接跳转的高亮显示
    JS判断移动端访问设备并加载对应CSS样式
    jquery刷新数据随机排列
  • 原文地址:https://www.cnblogs.com/lzpong/p/13030793.html
Copyright © 2020-2023  润新知