FreeSwitch:将默认数据库迁移至MySQL

2023-07-20 15:23:14 浏览数 (1)

1、mysql安装(省)

2、mysql远程访问

Mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问:

代码语言:javascript复制
mysql> use mysql;  
mysql> GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 

注意:上面的 % 不包括localhost,所以还必须加上这样的 命令 :

代码语言:javascript复制
mysql>GRANT ALL ON *.* TO ‘root’@'localhost'  IDENTIFIED BY '123456' WITH GRANT OPTION;

3、创建数据库freeswitch

4、安装odbc和mysql-connector

代码语言:javascript复制
yum install mysql-connector-odbc.x86_64 unixODBC-devel.x86_64

5、配置DSN

打开/etc/odbc.ini。添加内容如下:

代码语言:javascript复制
[freeswitch]
Description=MySQL freeswitch database
Driver=MySQL
SERVER =localhost
PORT =3306 
DATABASE = freeswitch
OPTION  =67108864
CHARSET = UTF8
Socket = /tmp/mysql.sock

5.1、测试数据库是否配置成功

代码语言:javascript复制
isql -v freeswitch root '123456'   

连接成功出现提示:

代码语言:javascript复制
 --------------------------------------- 
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
 --------------------------------------- 

注意:Socket 这行一定要加:不然会出现错误: [IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified [ISQL]ERROR: Could not SQLConnect

6、配置freeswitch

配置主程序和部分模块使用ODBC, 如果有新加模块, 请参考以下自行配置:

6.1、修改 conf/autoload_configs 中的db.conf.xml文件

代码语言:javascript复制
<param name="odbc-dsn" value="freeswitch:root:48STX2X"/> 

6.2、 修改 conf/autoload_configs 中的switch.conf.xml

代码语言:javascript复制
#修改字段
<param name="core-db-dsn" value="freeswitch:root:48STX2X" />
#添加
<param name="odbc-dsn" value="freeswitch:root:48STX2X"/>

6.3、修改 conf/autoload_configs 中的voicemail.conf.xml

代码语言:javascript复制
#修改字段
<param name="odbc-dsn" value="freeswitch:root:48STX2X"/> 

6.4、修改 conf/autoload_configs 中的callcenter.conf.xml

代码语言:javascript复制
<param name="odbc-dsn" value="freeswitch:root:48STX2X"/>

6.5、修改 conf/sip_profiles 中的 internal.xml 和 external.xml,internal-ipv6.xml

代码语言:javascript复制
<param name="odbc-dsn" value="freeswitch:root:48STX2X"/> 

备注: 其他模块请搜索 odbc-dsn.

7、测试

代码语言:javascript复制
rm -f /usr/local/freeswitch/db/*.db
./freeswitch -c -nonat -rp

查看控制台是否有错误

进入目录: /usr/local/freeswitch/db

查看是否有新的文件生成, 如果有则确定文件是哪个模块生成, 修改模块DSN配置

0 人点赞