1 MySQL支持

1.1 MySQL模块支持

默认安装时,不包含MySQL模块。

opensipsctlrc文件中包含了数据库配置的信息,要想让opensips支持mysql数据库,在编译安装的时候

就要支持mysql模块。方法如下:

(1)修改opensips中的Makefile.conf,在exclude_modules中去掉db_mysql,在include_modules中

添加db_mysql,然后重新编译安装。要添加支持的模块都可以这样操作。

(2)编译时指定,make include_modules=”db_mysql” modules prefix=/  。

在编译安装之前,需要安装mysql的开发包,要不编译通不过。方法如下:

$sudo apt-get install libmysqlclient-dev 。

2.2 安装MySQL

使用sudo opensipsdbctl create创建数据库在之前,要确认已经安装了mysql。安装方法如下:

$sudo apt-get install mysql-server mysql-client

安装过程中提示输入mysql的root用户密码。使用如下命令测试mysql是否安装成功

$sudo mysql -p           输入刚才设置的root密码

MySQL URL格式如下:

mysql://username:password@domain/dbname

2.3 创建opensips数据库

使用sudo opensipsdbctl create命令来创建数据库,这个过程中要求输入MySQL数据库root用户的密码,

就是上一步输入的密码。然后还有一些附加的表让你选择是否创建,选择之后opensips数据库创建成功。

/sbin/opensipsdbctl是一个shell脚本,可以打开读一下它的代码就知道创建数据库是怎么一个过程了。首先,

它会把/etc/opensips/opensipsctlrc这个配置文件包含进来,然后根据这个配置文件来创建数据库,还涉及到

/lib/opensips/opensipsctl中的opensipsdbctl.base文件和 opensipsdbctl.mysql文件。

可以进入opensips数据库查看一下有哪些表,用户认证要用的是subscriber表。

2 用户认证配置

上一节中已经说明了怎么让opensips支持MySQL数据库,用户认证是在上一节的基础上完成的。

这部分的主要工作是对opensips配置文件的修改,包括opensips.cfg和opensipsctlrc文件。配置文件opensips.cfg中

要修改全局变量、加载db_mysql.so、auth.so和auth_db.so动态库,并配置相应的参数,以及修改路由策略,同时配置文件

opensipsctlrc中也要修改一些参数。

配置文件opensips.cfg如下:

配置的过程中在网上找了很多资料,通常是配置文件检查能通过,但总是不能运行opensips,对这些资料深表怀疑,不知道

他们有没有真正实践过!

最后还是决定看官方的说明,如opensips mysql installation的英文PDF、opensips源码包中的INSTALL文件等。

INSTALL文件中只说明了要向opensips.cfg文件中添加那些配置代码,而没有详细说明要把这些语句加在什么位置,而且

其中好像还有错误,不能使用break,而是exit。opensips mysql installation的英文PDF中说明了具体的位置,但是还要

根据自己的实际情况来配置。

配置完成以后要检查配置文件语法是否正确,命令如下:

$sudo  opensips –c

检查通过以后启动opensips,命令如下:

$sudo opensipsctl start

如果启动时出现错误,查看系统日志了解具体原因,然后针原因解决问题。

$vim /var/log/syslog

3 测试

添加SIP用户:

语法:opensipsctl add

opensipsctl add alice@192.168.139.121 123456

opensipsctl add bob@192.168.139.121 123456

然后下载SIP客户端进行测试!

opensips mysql 认证_基于ubuntu中使用mysql实现opensips用户认证的解决方法相关推荐

  1. ubuntu mysql 优化_在Ubuntu上使用MySQL设置远程数据库优化站点性能

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 介绍 随着您的应用程序或网站的增长,您可能已经超出了当前的服务器设置.如果您在同一台计算机上托管Web服务器和数据库后端,最好将这两个功能分 ...

  2. php mysql 迁移_将phpstudy中的mysql迁移至Linux教程

    项目目的 将原来windows环境中使用phpstudy搭建的mysql 5.5.53 中的数据迁移至新主机Linux环境中 环境情况 新主机 系统平台: CentOS release 7.4 (Fi ...

  3. 怎么在Vc中打开MySQL数据库_在vc++中使用mysql数据库_MySQL

    vc++版本:v6.0 Host Info: localhost via TCP/IP Server Info: 5.0.67-community-nt Server Version: 50067 C ...

  4. java代码中设置mysql时区_关于Java中的mysql时区问题详解

    前言 话说工作十多年,mysql 还真没用几年.起初是外企银行,无法直接接触到 DB:后来一直从事架构方面,也多是解决问题为主. 这次搭建海外机房,围绕时区大家做了一番讨论.不说最终的结果是什么,期间 ...

  5. Ubuntu中使用apt-get时无法搜索软件的解决方法

    在centos中可以利用命令yum search + 软件名 来搜索源中的软件,非常方便,那ubuntu中有没有类似的命令呢? ubuntu中是用apt-get来进行软件安装的,我们首先打开终端来查看 ...

  6. ubuntu中解压rar文件遇到乱码的解决方法

    如上图所示,在用ubuntu的时候经常会遇见rar压缩文件打开出现乱码,解压的时候也会出现无效的编码等错误. 解决方法是用 sudo apt-get remove rar 卸载rar 然后用 sudo ...

  7. ubuntu+终端不能启动mysql数据库_在ubuntu环境下mysql数据库启动异常排除

    今天在ubuntu 12.04安装了mysql , 使用命令: sudo apt-get install mysql-server mysql-client 安装 安装以后启动正常,但是发现mysql ...

  8. kotlin mysql数据库_在kotlin中使用mysql行级锁

    mysql中的锁 首先需要介绍一下mysql的锁.一般我们使用InnoDB数据库引擎+行级锁,SQL为:SELECT * FROM table where id = 1 for update;.for ...

  9. java读mysql增量_在Java中检索MySQL自动增量

    我试图从数据库检索idPatient,但我不断收到错误,idPatient是自动增量.但我不知道这是什么原因造成的问题. 这是我正在尝试的代码 public List getPatientsFromD ...

最新文章

  1. Lync Server 2010标准版系列PART1:基础构建
  2. python3 练习题100例 (二十二)输入两个字符串,输出两个字符串集合的并集
  3. Python合并2个字典成1个新字典的9种方法
  4. 从Powershell 入侵脚本学到的如何执行后台runspace~
  5. 从网页(WEB)登录SAP
  6. OpenCV使用pthread实现多线程加速处理图像(C++)
  7. 解决 c3p0 和 MySQL 集成情况下,连接长时间闲置后重新使用时报错的问题
  8. tf.shape()和tf.reshape()
  9. VALSE学习(十二):视频时序建模和动作识别
  10. inDesign教程,如何创建具有吸引力的边注栏?
  11. Pyinstaller打包过程中报错“AttributeError: 'str' object has no attribute 'items''”问题解决
  12. 怎么使用水经注万能地图下载器制作百度个性化地图-人造区域篇
  13. 2022手机号段大全、归属运营商整理—2022.01.04更新(包含三大运营商)
  14. 数据采集工具:八爪鱼
  15. “注释”是程序员的自我修养
  16. 车载网络与计算机网络有什么不同,浅谈汽车车载网络的应用
  17. nbiot和2g_NBIoT网络覆盖性能评价与优化
  18. 《论语》原文及其全文翻译 学而篇1
  19. SQL Server ansi_null_default | ansi_null_dflt_on
  20. 华为电脑可以升级鸿蒙系统吗,华为电脑现在是鸿蒙系统吗_华为p40升级鸿蒙系统...

热门文章

  1. MongoDB 4.2 内核解析 - Change Stream
  2. 从电商到软件市场,阿里双11战火蔓延
  3. 业务系统 Over 阿里云性能压测的最佳实践
  4. 构建可靠系统的原则与实践
  5. 教你用一条SQL搞定跨数据库查询难题
  6. 容器服务kubernetes弹性伸缩高级用法
  7. 上手 Docker 容器,不应该是个问题
  8. 听一个内行人讲云原生简史
  9. 国内厂商 Onyx 违反 GPL 协议,中国开源何去何从?
  10. 巧用 Trie 树,实现搜索引擎关键词提示功能