1.mysql安装(因opensips添加鉴权用户需使用mysql存储)
<下载资源文件都放在 /usr/src/为例>
命令:
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server
安装后启动:
service mysqld restart
登陆mysql:
mysql -u root
修改密码:
set password for 'root'@'localhost' =password('password***');
注:最好不要修改mysql端口。
MySql拓展:
一些主要的命令:
登录:
mysql -u username -p
显示全部的数据库:
show databases;
使用某一个数据库:
use databasename;
显示一个数据库的全部表:
show tables;
退出:
quit;
删除数据库和数据表
mysql>drop database 数据库名;
mysql>drop table 数据表名;
用户相关:
查看全部的用户:
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
新建用户:
CREATE USER 'dog'
@
'localhost'
IDENTIFIED BY
'123456'
;
2.安装opensips
安装依赖库:
yum install mysql mysql-server mysql-libs mysql-devel
yum install gcc make
yum install flex bison ncurses libncurses-dev ncurses-devel
下载并解压opensips的源码(最新版本2.4.0,如果发现版本已更新可以去官网查看最新版本路径):
cd /usr/src
wget http://opensips.org/pub/opensips/latest/opensips-2.4.0.tar.gz
tar zxvf opensips-2.4.0.tar.gz
cd opensips-2.4.0
切换到root用户:
su
启动配置菜单:
make menuconfig
重点:很多教程都没表明这个选择步骤:Configure Compile Options -> Configure Excluded Modules -> db_mysql
按照此顺序选择db_mysql (空格键为选择键方向键为前进后退和确定)
选择db_mysql后一定要save。
最后选择”Compile And Install Opensips” 等待安装完毕。
安装完成后:
cd /usr/local/etc/opensips/
vi opensipsctlrc
编辑配置数据库信息:(需要修改的要按照自己情况修改比如 host password等)
SIP_DOMAIN= YOUR_PC_IP //此处写本机地址,如果有代理填写proxy地址
#数据库 MYSQL ORACLE PGSQL DB_BERKELEY DBTEXT均可
DBENGINE=MYSQL
#数据库所在服务器主机名/IP均可
DBHOST=localhost
#数据库名称,默认使用opensips,可配置其它名称
DBNAME=opensips
#数据库访问用户,主要用于数据的读写,请在mysql添加用户
DBWUSER=opensips
#数据库访问密码,密码必须为DBWUSER对应用户的密码
DBWPW=“123456”
#数据库管理用户,用于数据库、表创建与数据读写等,默认使用root,如有需要可以自行配置mysql用户权限
DBROOTUSER=“root”
修改完数据库配置后使用opensipsdbctl新建数据库:
cd /usr/local/sbin
opensipsdbctl create
增加用户(add后第一个是用户名第二个是密码):
opensipsctl add 101 101
opensipsctl add 102 102
启动opensipsctl
opensipsctl start
此时可以使用sip客户端检查下server运行情况。
error:
1.opensipsdbctl create 时出现:
ERROR: could not load the script in /usr/local//lib64/opensips/opensipsctl/opensipsdbctl.mysql for database engine MYSQL
ERROR: database engine not loaded - tried 'MYSQL'
因为没有在配置make menuconfig时选择db_mysql可以使用以下命令或者重新做一次配置。
cd /usr/local/lib/opensips/opensipsctl/
cp 你的opensips目录/scrips/opensipsdbctrl.mysql ./
mkdir mysql
cp 你的opensips目录/scrips/mysql/*.sql ./
2.启动opensips后抓包发现服务器返回sip 408 Request Timeout。
修改
cd /usr/local/etc/opensips/
vi opensipsctlrc
编辑配置数据库信息:(需要修改的要按照自己情况修改比如 host password等)
SIP_DOMAIN= YOUR_PC_IP //此处写本机地址
作者:渔湖
链接:https://www.jianshu.com/p/4f17429cfdcd
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。