首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用mysql在后缀中配置catch-所有别名

使用mysql在后缀中配置catch-所有别名
EN

Stack Overflow用户
提问于 2014-05-17 15:51:11
回答 2查看 1.9K关注 0票数 4

好像我的化名都没用了。当我用

代码语言:javascript
复制
postmap -q test@example.org mysql:/etc/postfix/mysql-virtual-alias-maps.cf

没有输出。但当我命令

代码语言:javascript
复制
 postmap -q jack@example.org mysql:/etc/postfix/mysql-virtual-alias-maps.cf

输出是

代码语言:javascript
复制
 john@example.org. 

我怎么才能解决这个问题?

配置查询是:

代码语言:javascript
复制
query= SELECT destination FROM virtual_aliases WHERE source='%s'

表virtual_aliases:

代码语言:javascript
复制
id  domain_id   source             destination
5   1           @example.org        john@example.org
7   1           john@example.org    john@example.org
8   1           jack@example.org    john@example.org

表virtual_domains:

代码语言:javascript
复制
id  name
1   example.org

表virtual_users:

代码语言:javascript
复制
id  domain_id   password    email
1   1           pwd         john@example.org
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-17 17:25:59

您的mysql查询应该是

代码语言:javascript
复制
SELECT destination FROM virtual_aliases WHERE source='%s' 
UNION ALL  
SELECT destination FROM virtual_aliases WHERE source='@%d' 
AND NOT EXISTS (SELECT destination FROM virtual_aliases WHERE source='%s')
票数 6
EN

Stack Overflow用户

发布于 2021-09-03 04:40:24

@clement是正确的,但是有一个更简单的查询可以更容易地在sql服务器上工作。以下是对我起作用的东西:

更改/etc/后缀/mysql中的查询行-虚拟别名-maps.cf

代码语言:javascript
复制
query = select distinct destination from virtual_aliases where source='%s' or source = '@%d';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23713295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档