Courier 无法访问 mysql 服务器,但 mysql-client 可以

Courier 无法访问 mysql 服务器,但 mysql-client 可以

我在 Ubuntu 14.04 服务器上设置了一个邮件服务器。我安装了 Courier 作为 IMAP 服务器,并对其进行了配置,以便它可以连接到 MySQL 并将其数据用作用户列表等。

我已经成功配置过一次 Courier 来连接到另一台机器上的 MySQL。但现在我在另一台机器上再次执行此操作时遇到了问题。

查看/var/log/mail.log文件后我可以看到 Courier 无法连接到 MySQL:

authdaemond: authmysql: mysql_select_db(MyDb) error: Access denied for user 'MyUser'@'192.168.1.10' to database 'MyDb'

在这种情况下,我可以使用 mysql 客户端从同一台机器的 shell 连接到 mysql 服务器,并且使用与提供给 Courier 相同的凭据!这怎么可能呢?

答案1

正如@NickW 猜测的那样,这是数据库名称的拼写错误,但我仍然认为错误消息应该更具信息性。它告诉我用户名和密码不正确,而实际上它们是正确的,但没有具有指定名称的数据库可用。

一旦我清除服务器上的密码,错误就变成:

authdaemond: authmysql: mysql_select_db(MyDb1) error: Unknown database 'MyDb1'

就在那时我才意识到我打错了!

相关内容