Ubuntu 16.04に新しいメールサーバーをインストールして、postfixとmysqlのインストールと構成を開始しました。
apt install postfix postfix-mysql mysql-server mysql-client
Postfix(3.1)を構成し、メールのデータベースベースを作成した後、postfixがdbに到達してすべてのドメイン/ユーザーを取得できるかどうかをテストしようとしました。
postmap -q mydomain.com mysql:/etc/postfix/mysql-virtual_domains.cf
エラーが発生しました:
postmap: fatal: unsupported dictionary type: mysql
サーバーが何らかの理由でmysqlをサポートしていないようです!
# postconf -m
btree
cidr
environ
fail
hash
inline
internal
memcache
nis
pipemap
proxy
randmap
regexp
socketmap
static
tcp
texthash
unionmap
unix
/etc/postfix# cat dynamicmaps.cf
# dict-type so-name (pathname) dict-function mkmap-function
cdb postfix-cdb.so.1.0.1 dict_cdb_open mkmap_cdb_open
ldap postfix-ldap.so.1.0.1 dict_ldap_open
mysql postfix-mysql.so.1.0.1 dict_mysql_open
pcre postfix-pcre.so.1.0.1 dict_pcre_open
pgsql postfix-pgsql.so.1.0.1 dict_pgsql_open
sqlite postfix-sqlite.so.1.0.1 dict_sqlite_open
助けてください?
この問題に多くの時間を費やした後、私はそれを見つけて解決しました:
ファイル/etc/postfix/dynamicmaps.cf
のmysql
行を次のように変更します。
mysql /usr/lib/postfix/postfix-mysql.so.1.0.1 dict_mysql_open
そして、接尾辞postfix reload
をリロードします。
postfix-mysql
をインストールした後、postfixを再起動してください:
postfix reload