wget http://www.ex-parrot.com/~chris/tpop3d/tpop3d-1.5.3.tar.gz
tar zxvf tpop3d-1.5.3.tar.gz
cd tpop3d-1.5.3
./configure --enable-mbox-maildir --enable-mbox-bsd --enable-tls --disable-auth-pam \
--enable-auth-mysql --with-mysql-include-dir=/usr/local/mysql/include \
--with-mysql-lib-dir=/usr/local/mysql/lib
(注:--enable-tls打开ssl支持,确认已安装openssl,如果不是安装在默认目录,再加上--with-openssl-root参数指定openssl所安装的目录)
make
make install
这时会出现:
configure: error: vmail-sql authentication enabled, but mysql_init doesn't seem to be available.
错误信息。
vi configure,找到
eval "ac_cv_lib_$ac_lib_var=\"mysqlclient \"" ,更改为:
eval "ac_cv_lib_$ac_lib_var=\"mysqlclient -lz \""
然后:
./configure --enable-mbox-maildir --enable-mbox-bsd --enable-tls --disable-auth-pam \
--enable-auth-mysql --with-mysql-include-dir=/usr/local/mysql/include \
--with-mysql-lib-dir=/usr/local/mysql/lib
make
make install
这样就安装完成带Mysql验证的tpop3d,
修改/usr/local/etc/tpop3d.conf文件(如果没有,执行:cp tpop3d.conf.sample /usr/local/etc/tpop3d.conf):
#
# MySQL authentication options
#
# auth-mysql-enable: (yes | true)
# Enable MySQL authentication.
auth-mysql-enable: true
# auth-mysql-mail-group: (group-name | gid)
# The group name or gid under which access to the mailspool will take place.
# [default: group of user associated with virtual domain]
auth-mysql-mail-group: vmail
# auth-mysql-hostname: hostname [[hostname] hostname] ..
# Host on which to connect to MySQL. Tried in order until a working host is
# found. [default: localhost]
auth-mysql-hostname: localhost
# auth-mysql-database: database
# MySQL database to use for authentication.
auth-mysql-database: yourdatabase
# auth-mysql-username: username
# MySQL username used to access the database.
auth-mysql-username: yourusername
# auth-mysql-password: password
# Password of MySQL user.
auth-mysql-password: yourpassword
# auth-mysql-pass-query: substitution string
# Query template to use for USER/PASS authentication. Must return mailpath,
# password, userid, mailspool type; uses substitution variables as described
# in the man page.
#auth-mysql-pass-query: SELECT mailpath, password, userid, spooltype FROM ...
auth-mysql-pass-query: SELECT CONCAT('/var/mail/', maildir), \
CONCAT('{crypt}', password), \
'vmail', 'bsd' \
FROM mailbox \
WHERE username = CONCAT('$(local_part)', '@', '$(domain)')
由于没有使用vmail-sql中的数据库schema,则要将auth-mysql-pass-query配置参数修改成符合你本地数据库schema的查询条件。详细情况参见:
http://www.ex-parrot.com/~chris/tpop3d/tpop3d.conf.5.html 的A note on MySQLauthentication部分
分享到:
相关推荐
本篇文章将深入探讨如何使用CMake编译并安装MySQL 5.6版本。 首先,CMake是一个用于管理构建过程的工具,它允许开发者编写一次构建脚本,然后在多个操作系统和编译器上生成本地构建系统。CMake并不直接进行编译,...
8. **验证安装**:最后,重启系统并使用`service mysql start`启动MySQL,然后使用`mysql -u root -p`登录数据库,输入密码验证安装是否成功。 通过以上步骤,你就可以在Linux系统中成功编译并安装MySQL 5.6.36版本...
6. **测试连接**:使用`mysql -u root -p`命令登录MySQL服务器,验证安装是否成功。 **Connector/C++ 1.1.8编译安装** 1. **预处理**:同样需要安装必要的依赖库,如`libmysqlclient-dev`,`libodbc1`,`libiodbc-...
创建`mysql`用户和用户组(如果不存在),然后使用`chown`命令将MySQL的安装目录和数据目录的所有权分配给`mysql:mysql`。 7. **初始化MySQL数据库**: 进入MySQL的安装目录,运行`scripts/mysql_install_db`脚本...
debian编译安装mysql5.7.35.txt 编译安装更稳定! 每一行复制执行即可完成安装!
这个编译安装过程适用于其他MySQL 5.5.x版本,因为从5.5开始,MySQL引入了CMake作为构建系统,为用户提供了更自由的定制编译选项。尽管随着版本更新,某些细节可能有所变化,但基本流程保持一致。
- 验证MySQL服务是否成功启动,可以使用以下命令之一: - `ps –ef | grep mysql` - `netstat –nat`,检查3306端口是否开放。 - 安装MySQL客户端:`rpm –ivh MySQL-client-5.14.9-l.glibc23.i386.rpm`。 - ...
### MySQL的二进制与编译安装步骤详解 ...编译安装适合对自定义配置有较高需求的场景,而二进制安装则更加简单快捷,适合大多数用户的使用需求。根据实际情况选择合适的安装方式,可以有效提高MySQL数据库的部署效率。
mysql8编译安装步骤 详细记录了如何一步步从源码安装mysql8
linux下源码编译安装mysql-5.6.25版本
3. **编译和安装**:配置完成后,使用以下命令编译和安装Qt,包括MySQL驱动: ``` make -j4 make install ``` `-j4`表示使用4个线程进行编译,你可以根据你的CPU核心数调整这个值。 4. **链接MySQL驱动**:...
在开发基于Qt的应用程序并尝试连接到MySQL...总之,解决"QMYSQL driver not loaded"错误的关键在于编译和安装Qt的MySQL驱动库。遵循上述步骤,你应该能够成功连接到MySQL数据库,从而在Linux环境中执行你的Qt应用。
MySQL 8.0.33 是一个流行的开源关系型数据库管理系统,在Linux环境下进行编译安装可以为用户带来更深入的定制性和性能优化。在Linux(如CentOS)系统上手动编译MySQL 8.0.33的过程涉及多个步骤,包括获取源代码、...
在本文中,我们将详细探讨如何进行MySQL的免编译安装,尤其是针对MySQL 5.1版本,这一过程将遵循INSTALL-BINARY安装向导文件的指导。 免编译安装通常比源码编译安装更为简便快捷,因为它避免了编译源代码的复杂步骤...
linux环境下的mysql编译安装的过程,只要按照我的方法进行,就不会出错,前提示你的linux可以安装yum源,否则无法编译安装
MySQL源码安装编译是一个复杂的过程,涉及到许多技术细节,对于想要深入了解MySQL内部工作原理或者定制特定功能的用户来说,这是必要的步骤。本教程将基于网络上的多种资源和实践经验,为您提供一个详尽的MySQL源码...
在编译安装完成后,需要添加一个名为mysql的用户和组,然后将安装目录的所有者改为mysql用户。 初始化数据库 初始化数据库需要使用mysql_install_db命令来创建数据库文件和表结构。 注册为服务 将MySQL注册为...