编译OpenSIPS使用连接源码安装的MySQL

因项目的需求,低版本的MySQL在性能上不能满足我们的需求,现在需要更换为高版本的MySQL 5.5.44.新版本的MySQL 5.5.44在性能上,比起CentOS 5.11自带的低版本的MySQL 5.0.95,至少要高一倍以上。

MySQL 5.5.44的安装,我们这边就不采用源码安装而是直接使用编译好的版本。

yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel libaio-devel boost boost-devel autoconf* automake* zlib* libxml* ncurses-devel ncurses libgcrypt* libtool* cmake openssl openssl-devel bison bison-devel unzip

groupadd -g 10001 mysql 
useradd -u 10001 -s /sbin/nologin -d /dev/null -g mysql mysql

mkdir /data

wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.44-linux2.6-x86_64.tar.gz
tar zxf mysql-5.5.44-linux2.6-x86_64.tar.gz

mv mysql-5.5.44-linux2.6-x86_64 /data/mysql5.5.44

echo "127.0.0.1 $HOSTNAME">>/etc/hosts

chown -R mysql.mysql /data/mysql5.5.44/data

/data/mysql5.5.44/scripts/mysql_install_db --user=mysql --group=mysql --basedir=/data/mysql5.5.44  --datadir=/data/mysql5.5.44/data
cp /data/mysql5.5.44/support-files/my-medium.cnf /etc/my.cnf
cp /data/mysql5.5.44/support-files/mysql.server /etc/init.d/mysqld

sed -i ‘s#^basedir=$#basedir=/data/mysql5.5.44#g‘ /etc/init.d/mysqld
sed -i ‘s#^datadir=$#datadir=/data/mysql5.5.44/data#g‘ /etc/init.d/mysqld

chmod 750 /etc/init.d/mysqld

service mysqld start

ln -s /data/mysql5.5.44/bin/* /usr/bin/

mysqladmin -uroot password 123456

mysql -uroot -p123456 -e ‘delete from mysql.user where password=""‘

mysql -uroot -p123456 -e ‘drop database test‘

以上MySQL就已经正常安装及使用。

源码安装请参阅:http://fengwan.blog.51cto.com/508652/1363566

现在编译安装OpenSIPS,你会发现无法编译

这个时候是因为OpenSIPS找不到MySQL的库,如果yum安装的话至少要安装mysql及mysql-devel.

我们这里就不yum安装了,因为已经安装了mysql。

ln -s /data/mysql5.5.44/bin/* /usr/bin/

ln -s /data/mysql5.5.44/include/ /usr/include/mysql

ln -s /data/mysql5.5.44/lib/ /usr/lib64/mysql

ln -s /data/mysql5.5.44/lib/* /usr/lib64/

将以上库及包含文件软链接即可正常。

yum -y install gcc make zlib-devel wget 
yum -y install flex bison ncurses-devel openssl-devel
yum -y install lynx svn libxslt
wget http://opensips.org/pub/opensips/1.11.5/src/opensips-1.11.5-latest_src.tar.gz
tar zxf opensips-1.11.5-latest_src.tar.gz
cd opensips-1.11.5-tls/
make prefix=/data/opensips1.11.5 all include_modules="db_mysql" 
make prefix=/data/opensips1.11.5 install include_modules="db_mysql"
cd

sed -i ‘s/\# DBENGINE=MYSQL/DBENGINE=MYSQL/g‘ /data/opensips1.11.5/etc/opensips/opensipsctlrc 
sed -i ‘s/\# DBHOST=localhost/DBHOST=localhost/g‘ /data/opensips1.11.5/etc/opensips/opensipsctlrc
sed -i ‘s/\# DBNAME=opensips/DBNAME=opensips/g‘ /data/opensips1.11.5/etc/opensips/opensipsctlrc 
sed -i ‘s/\# DBRWUSER=opensips/DBRWUSER=opensips/g‘ /data/opensips1.11.5/etc/opensips/opensipsctlrc 
sed -i ‘s/\# DBRWPW="opensipsrw"/DBRWPW="opensipsrw"/g‘ /data/opensips1.11.5/etc/opensips/opensipsctlrc 
sed -i ‘s/\# DBROOTUSER="root"/DBROOTUSER="root"/g‘ /data/opensips1.11.5/etc/opensips/opensipsctlrc 

ln -s /data/opensips1.11.5/etc/opensips/ /etc/
echo ‘export PATH=$PATH:/data/opensips1.11.5/sbin/‘ >>/etc/profile
source /etc/profile

/data/opensips1.11.5/sbin/opensipsdbctl create

/data/opensips1.11.5/sbin/osipsconfig 

rm -f /data/opensips1.11.5/etc/opensips/opensips.cfg
mv /data/opensips1.11.5/etc/opensips/opensips_residential_*.cfg /data/opensips1.11.5/etc/opensips/opensips.cfg

sed -i ‘s/disable_tcp=no/disable_tcp=yes/g‘ /data/opensips1.11.5/etc/opensips/opensips.cfg 
sed -i ‘s/listen=udp:127.0.0.1:5060/listen=udp:eth0:5060/g‘ /data/opensips1.11.5/etc/opensips/opensips.cfg 
sed -i ‘s#mpath="/usr/local/lib/opensips/modules/"#mpath="/data/opensips1.11.5/lib64/opensips/modules/"#g‘ 

/data/opensips1.11.5/etc/opensips/opensips.cfg 
sed -i -e ‘/modparam("uri", "use_uri_table", 0)/a\modparam("uri", "db_url","mysql://opensips:[email protected]/opensips")‘ 

/data/opensips1.11.5/etc/opensips/opensips.cfg 

echo "local0.* /var/log/opensips.log" >> /etc/syslog.conf 
service syslog restart 

mysql -uroot -p123456 -e "insert into opensips.domain(domain) values(‘192.168.1.245‘)" 
#192.168.1.245为你的sip域,可以为ip

cp /root/opensips-1.11.5-tls/packaging/fedora/opensips.init /etc/init.d/opensips 
sed -i ‘s#cfgdir="/etc/$prog"#cfgdir="/data/opensips1.11.5/etc/$prog"#g‘ /etc/init.d/opensips
sed -i ‘s#opensips=/usr/sbin/$prog#opensips=/data/opensips1.11.5/sbin/$prog#g‘ /etc/init.d/opensips 
chmod +x /etc/init.d/opensips 
groupadd opensips 
useradd -g opensips -s /sbin/nologin -d /dev/null opensips 
service opensips start

若有不懂的,参阅http://fengwan.blog.51cto.com/508652/1655265

若启动OpenSIPS的时候出现

ERROR:core:sr_load_module: could not open modu                                                        le </data/opensips1.11.5/lib64/opensips/modules/db_mysql.so>: libmysqlclient.so.                                                        18: cannot open shared object file: No such file or directory

运行

ln -s /data/mysql5.5.44/lib/* /usr/lib64/

将库链接上即可

时间: 2024-11-11 18:34:17

编译OpenSIPS使用连接源码安装的MySQL的相关文章

LNMP架构 源码安装nginx+mysql+php+memcache+论坛

一.LNMP架构 LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构. Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统.代表版本有:debian.centos.ubuntu.fedora.gentoo等. Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器. Mysql是一个小型关系型数据库管理系统. PHP是一种在服务器端执行的嵌入HTML文档的脚本语言. 这四种软件均为免费开源软件,组合

实战使用saltstack源码安装配置mysql

环境: salt_master:192.168.100.228 salt_client1:192.168.100.245 master client 版本一致 [[email protected]_server base]# salt --versions-report            Salt: 0.17.5          Python: 2.6.6 (r266:84292, Jun 18 2012, 14:18:47)          Jinja2: unknown       

ubuntu mysql5.7源码安装

最近在学习搭建LNMP环境,nginx相对来说还是比较好搭的,但是mysql就太坑爹了,之前在网上查资料的时候看到一个人说它花了一周的时间源码搭建mysql,刚开始内心还有点嘲笑他,但是此时此刻我发现是我错了,周日花了一天的时间使用源码安装了mysql,累感不爱.在ubuntu下mysql可以使用apt-get命令一步安装,仅做少许配置,但是源码安装真是掉了一层皮,但是源码安装又是一个运维必须要会的一个东西,所以必须学习. 1.下载mysql 这个是最基本的第一步,下载地址http://dev.

MySQL 5.5.17 源码安装

工作需要使用MySQL,在linux中用yum安装,安装路径不可控,不能对它进行定制,为了更好的管理MySQL Sever,采用源码安装. MySQL 5.5.17安装需要使用cmake编译工具,可以使用yum 来安装cmake 安装MySQL DB 创建相关用户组及用户  groupadd mysql  useradd –g mysql mysql 在存放MySQL源码包路径解压并且安装(手动创建相应安装目录) #mkdir /opt/mysql #chown -R mysql:mysql /

关于mysql源码安装后备份没有mysqldump命令的错误解决

源码安装的mysql在经历了创建库,选定库,创建表,插入数据后,备份时出现了 -bash:mysqldump  command not found 的错误,这是环境变量配置的问题, 命令解决入下: vim  /etc/profile 在最后一行添加:export  PATH=/usr/local/mysql/bin :$PATH 执行命令:source /etc/profile 问题解决.

centos6.5 64 源码安装redis服务,建立可远程连接的redis数据库

安装环境:centos6.5 64位 使用的包:redis-2.8.19.tar.gz  tcl8.6.3-src.tar.gz 包的下载链接:http://downloads.sourceforge.net/tcl/tcl8.6.3-src.tar.gz http://download.redis.io/releases/redis-2.8.19.tar.gz 本次安装的目录/home/hadoop/redis为任意目录 代码实现: 1,安装需要的支持环境 su root cd /home/h

Centos 7.0 编译安装LAMP(Linxu+apache+mysql+php)之源码安装Mysql (二)

mysql 简介: MySQL是一个关系型数据库管理系统,关系数据库将数据保存在不同的表中,这样就增加了速度并提高了灵活性.目前其属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件.MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言. 安装环境: 系统: centos 7.0 最小化安装 软件

Centos 7.0 编译安装LNMP(Linxu+nginx+mysql+php)之源码安装nginx (一)

nginx简介:       Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日. 其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Nginx是一款轻量级的Web 服务器

Centos 7.0 编译安装LAMP(Linxu+apache+mysql+php)之源码安装Apache (一)

Apache 简介: Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一.它快速.可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中. 安装环境: 系统: centos 7.0 最小化安装 软件:httpd-2.4.26 依赖包:apr .apr-util .pcre .gcc .gcc-c++ .perl-dvel.perl.openssl .openssl-