<postfix邮件服务下mysql的升级>
本片服务的环境的红帽的企业版6.5 的,6.3的测试可能会略有不一样,不过方法大致是一样的。
当前系统的postfix的版本为 postfix-2.6.6-2.2.el6_1.x86_64
我们要向使用最新的就要去网上dow下最新的。获取新的postfix的包 postfix-2.11.0.tar.gz
解压 后会生成一个目录,切换到此目录下。 cd postfix-2.11.0
我们之前的文章提到过要是有.spec的文件可以打装成安装包,直接安装就很方便了 find -name '*.spec',发现没有.spec这样的文件。
我们知道很多源码包的编译安装都是从INSTALL这个文件中获取帮助。
vim INSTALL //可以查看到安装升级的帮助,下面是文件里的关键行模板。
$ make -f Makefile.init makefiles
找到关键的行,生成编译文件,进行编译 make -f Makefile.init makefiles 缺少库文件,安装库文件。
6.3的版本mysql-devel这个包包。要是6.5的话,直接装 yum install db*-devel -y这样就ok了
然后重新编译 make -f Makefile.init makefiles,编译完成后会发现mysql这个插件消失了,显然这不是我们想要的结果。
可以查看到到mail服务所支持的服务和插件
postconf -a
postconf -A
postconf -m
make tidy //编译完成或失败都会产生很多临时文件,会造成我们日后其他服务的障碍,清除编译生成的临时文件
cd README_FILES/ //我们也知道很多源码包都一样,除了INSTALL可以获取帮助,下一个就是 README_FILES目录,里面写了很多关于mail其他插件的升级方案。
less MYSQL_README //查看mail下mysql的编译帮助
找到下面的行:他会提示说,如果你是其他linux版本使用上面这个,要是 Solaris就使用下面这个,当然下面的只是模板。
/*
In order to build Postfix with mysql map support, you will need to add - DHAS_MYSQL and -I for the directory containing the mysql headers, and the mysqlclient library (and libm) to AUXLIBS, for example:
make -f Makefile.init makefiles \ 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include' \ 'AUXLIBS=-L/usr/local/mysql/lib -lmysqlclient -lz -lm'
On Solaris, use this instead:
make -f Makefile.init makefiles \ 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include' \ 'AUXLIBS=-L/usr/local/mysql/lib -R/usr/local/mysql/lib \ -lmysqlclient -lz -lm'
*/
下面的版本是6.5的,6.3的略有不一样,不过方法一样
rpm -ql mysql-devel //查看mysql的编译/库 路径,为什么需要下面的路径,上面的编译会调用gcc和库文件,很多软件都是c写的,它需要找到c和库的头文件。.h开头的都是c文件。
这个是6.5 的,上面mysql编译,把这两个路径粘贴过去就ok了,
/usr/include/mysql/sslopt-case.h
/usr/lib64/mysql/libmysqlclient.so
6.3
/usr/include/mysql/typelib.h
/usr/lib/mysql/libmysqlclient.so
的是下面的样子:
mkae tidy //清除上次上次编译失败的文件,
make -f Makefile.init makefiles
CCARGS表示宏。用于替换makefile中的默认值 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql' //-I路径 表示在指定路径搜索头文件
-lz 表示搜索libz.so或者libz.a,这里用了缩写的形式,只写了一个z,同理lmysqlclient就表示libmysqlclient.so/libmysqlclient.a
'AUXLIBS=-L/usr/lib64/mysql -lmysqlclient -lz -lm'
make upgrade //编译完要升级
postconf -m //这次可以看到mysql插件了
下面的属于测试,发封邮件测试下ok不?
postconf -n //可以查看到mail的一些参数
postconf -e inet_interfaces=all //所有人可以使用mail服务 postfix reload //重新载入
postfix stop postfix start netstat -antple
<postfix邮件服务下mysql的升级>的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- apache htaccess
#RewriteCond :重新条件#RewriteRule : 重写规则# .htaccess文件中的规则会以它们出现的顺序被处理 <IfModule mod_rewrite.c>Rew ...
- Golang学习 - unsafe 包
------------------------------------------------------------ 指针类型: *类型:普通指针,用于传递对象地址,不能进行指针运算. unsaf ...
- Javascript操纵Cookie--转
引用地址:http://www.imkevinyang.com/2009/06/javascript%E6%93%8D%E7%BA%B5cookie.html 在讲如何使用Javascript操纵Co ...
- 【PHP代码审计】 那些年我们一起挖掘SQL注入 - 3.全局防护Bypass之Base64Decode
0x01 背景 现在的WEB程序基本都有对SQL注入的全局过滤,像PHP开启了GPC或者在全局文件common.php上使用addslashes()函数对接收的参数进行过滤,尤其是单引号.同上一篇,我 ...
- PreparedStatement和Statement的区别
转自:http://blog.sina.com.cn/s/blog_77eba18f01019csh.html 1. PreparedStatement接口继承Statement, PreparedS ...
- request.getHeader("Referer")理解【转载】
request.getHeader("Referer")用于获取来源页地址,但有时却为空值,这是怎么回事.原因如下: getHeader("Referer")要 ...
- ubuntu创建、删除文件及文件夹,强制清空回收站方法
mkdir 目录名 => 创建一个目录 rmdir 空目录名 => 删除一个空目录 rm 文件名 文件名 => 删除一个文件或多个文件 rm –rf 非 ...
- Centos7.5 搭建Red5视频直播服务器
一.安装java环境 yum install java-1.7.0-openjdk 详细步骤请参考 http://www.cnblogs.com/java-qzq/p/5845509.html 我的这 ...
- Laravel 清空配置缓存
清空配置缓存 php artisan cache:clear php artisan config:clear
- spring项目中如何添加定时器以及在定时器中自动生成sprng注入对象
最近做了一个java的项目,部门领导给了一套代码让我尽快掌握,说心里话本人真心不喜欢java的这种项目方式,各种配置各种xml文件简直头都大了,下面就将我遇到的其中一个我认为是坑的地方整理出来,希望能 ...