Mailing List Archive

I can't get MYSQL to work with Exim 4.05
This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
I have searched google .. read the FAQ's and the archives and I still can't figure out how to use mysql with exim.



This is what I have done:



Compiled exim with mysql support



Created a mysql database:

Mysql database:exim

Mysql table: user (fields: userid, user, mailaddress, mailboxpath, homedir, domain, localonly) mailaddress = user@domain

domain (field: domain)



userid is the localuser account

user is the users initials



This is what I need to do:



1. If a localonly user from a virtual domain tries to send to nonlocal users the mail should bounce other users should be able to send to nonlocal users

2. mail to nonexisient users should bounce

3. mail to virtual users should be delivered to mailboxpath



This is what I have tried:



configure script:



... snip



mysql_servers = localhost/exim/user/root/password



mysql_domain = select domain from user where mailaddress='${quote_mysql:$local_part@$domain}'

mysql_mailbox = select domain from user where mailaddress='${quote_mysql:$local_part@$domain}'

mysql_user = select userid from user where mailaddress='${quote_mysql:$local_part@$domain}'



.. snip



begin routers



.. snip



virtual_local_user:

driver = accept

domains = ${lookup mysql {mysql_domain}{$vaule}}

condition = ${lookup mysql {mysql_user}{$vaule}}

transport = virtual_delivery



localuser:

driver = accept

check_local_user

transport = local_delivery



begin transports



.. snip



virtual_delivery:

driver = appendfile

file = ${lookup mysql {mysql_mailbox}{$value}}

delivery_date_add

envelope_add

return_path_add

user = mail

group = mail

create_directory



.. snip



-- EOF



When I try to test the setup with



---

>exim -v postmaster@local.domain -d 2> debug.log

From: postmaster@local.domain

To: post@local.virtualdomain

Subject: test



test

^D



------



I get this in the debug.log file:



LOG: MAIN

<= root @local.domain <mailto:root@local.domain> U=root P=local S=280

LOG: MAIN PANIC

failed to expand "${lookup mysql {select domain from user where mailaddress='${quote_mysql:$local_part@$domain}'}{$vaule}}" while checking a list: lookup of "select domain from user where mailadress = '-d@local.domain'" gave DEFER: unexpected slash in MySQL server hostname: localhost/exim



.. snip



Well .. I'm starting to PANIC as well ;-)



I would be nice if someone could write a tutorial for us newbies on how to make MySQL work with exim.



Cheers,



Flemming



--
RE: I can't get MYSQL to work with Exim 4.05 [ In reply to ]
Try:

hide mysql_servers = localhost/exim/root/password

Or even:

hide mysql_servers = /exim/root/password

Its <server>/<db name>/<username>/<passwd>

Check Section 9.14 of the spec
(http://www.exim.org/exim-html-4.00/doc/html/spec_9.html#SECT9.14)

HTH,
Mark.

-----Original Message-----
From: Flemming Christensen [mailto:fc@dsidata.dk]
Sent: 24 July 2002 14:32
To: Exim-Users (E-mail)
Subject: [Exim] I can't get MYSQL to work with Exim 4.05


This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
I have searched google .. read the FAQ's and the archives and I still can't
figure out how to use mysql with exim.



This is what I have done:



Compiled exim with mysql support



Created a mysql database:

Mysql database:exim

Mysql table: user (fields: userid, user, mailaddress, mailboxpath,
homedir, domain, localonly) mailaddress = user@domain

domain (field: domain)



userid is the localuser account

user is the users initials



This is what I need to do:



1. If a localonly user from a virtual domain tries to send to nonlocal users
the mail should bounce other users should be able to send to nonlocal users

2. mail to nonexisient users should bounce

3. mail to virtual users should be delivered to mailboxpath



This is what I have tried:



configure script:



... snip



mysql_servers = localhost/exim/user/root/password



mysql_domain = select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'

mysql_mailbox = select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'

mysql_user = select userid from user where
mailaddress='${quote_mysql:$local_part@$domain}'



.. snip



begin routers



.. snip



virtual_local_user:

driver = accept

domains = ${lookup mysql {mysql_domain}{$vaule}}

condition = ${lookup mysql {mysql_user}{$vaule}}

transport = virtual_delivery



localuser:

driver = accept

check_local_user

transport = local_delivery



begin transports



.. snip



virtual_delivery:

driver = appendfile

file = ${lookup mysql {mysql_mailbox}{$value}}

delivery_date_add

envelope_add

return_path_add

user = mail

group = mail

create_directory



.. snip



-- EOF



When I try to test the setup with



---

>exim -v postmaster@local.domain -d 2> debug.log

From: postmaster@local.domain

To: post@local.virtualdomain

Subject: test



test

^D



------



I get this in the debug.log file:



LOG: MAIN

<= root @local.domain <mailto:root@local.domain> U=root P=local S=280

LOG: MAIN PANIC

failed to expand "${lookup mysql {select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'}{$vaule}}" while checking a
list: lookup of "select domain from user where mailadress =
'-d@local.domain'" gave DEFER: unexpected slash in MySQL server hostname:
localhost/exim



.. snip



Well .. I'm starting to PANIC as well ;-)



I would be nice if someone could write a tutorial for us newbies on how to
make MySQL work with exim.



Cheers,



Flemming



--

--

## List details at http://www.exim.org/mailman/listinfo/exim-users Exim
details at http://www.exim.org/ ##


Salamis Group of Companies - WWW.SALAMISGROUP.COM

This communication contains information which is confidential and may
also be privileged. It is for the exclusive use of the intended
recipient(s). If you are not the intended recipient(s) be advised
that any form of distribution, copying or use of this communication
or the information it contains is strictly prohibited and may be
unlawful. We apologise if you have received this communication in
error. Please return it to the sender immediately, delete this
communication from your computer and destroy any copies of it. Any
views/opinions expressed in this email are that of the author and may
not reflect the views of Salamis (M&I)Ltd.
SV: I can't get MYSQL to work with Exim 4.05 [ In reply to ]
After changing mysql_servers I get this from the debug.log

LOG: MAIN
<= root@local.domain U=root P=local S=280
LOG: MAIn
** -d@local.domain Unrouteable address

.. snip

it seems that my router is tasting the sender and not the receiver ?!?!

$local_part = "-d"
$domain = "local.domain"

or am I just confused about everything ?????

thanks for helping

Flemming

-----Oprindelig meddelelse-----
Fra: Mark McRitchie [mailto:Mark.McRitchie@salamis.co.uk]
Sendt: 24. juli 2002 15:42
Til: Flemming Christensen
Cc: Exim Users (E-mail)
Emne: RE: [Exim] I can't get MYSQL to work with Exim 4.05


Try:

hide mysql_servers = localhost/exim/root/password

Or even:

hide mysql_servers = /exim/root/password

Its <server>/<db name>/<username>/<passwd>

Check Section 9.14 of the spec
(http://www.exim.org/exim-html-4.00/doc/html/spec_9.html#SECT9.14)

HTH,
Mark.

-----Original Message-----
From: Flemming Christensen [mailto:fc@dsidata.dk]
Sent: 24 July 2002 14:32
To: Exim-Users (E-mail)
Subject: [Exim] I can't get MYSQL to work with Exim 4.05


This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
I have searched google .. read the FAQ's and the archives and I still can't
figure out how to use mysql with exim.



This is what I have done:



Compiled exim with mysql support



Created a mysql database:

Mysql database:exim

Mysql table: user (fields: userid, user, mailaddress, mailboxpath,
homedir, domain, localonly) mailaddress = user@domain

domain (field: domain)



userid is the localuser account

user is the users initials



This is what I need to do:



1. If a localonly user from a virtual domain tries to send to nonlocal users
the mail should bounce other users should be able to send to nonlocal users

2. mail to nonexisient users should bounce

3. mail to virtual users should be delivered to mailboxpath



This is what I have tried:



configure script:



... snip



mysql_servers = localhost/exim/user/root/password



mysql_domain = select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'

mysql_mailbox = select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'

mysql_user = select userid from user where
mailaddress='${quote_mysql:$local_part@$domain}'



.. snip



begin routers



.. snip



virtual_local_user:

driver = accept

domains = ${lookup mysql {mysql_domain}{$vaule}}

condition = ${lookup mysql {mysql_user}{$vaule}}

transport = virtual_delivery



localuser:

driver = accept

check_local_user

transport = local_delivery



begin transports



.. snip



virtual_delivery:

driver = appendfile

file = ${lookup mysql {mysql_mailbox}{$value}}

delivery_date_add

envelope_add

return_path_add

user = mail

group = mail

create_directory



.. snip



-- EOF



When I try to test the setup with



---

>exim -v postmaster@local.domain -d 2> debug.log

From: postmaster@local.domain

To: post@local.virtualdomain

Subject: test



test

^D



------



I get this in the debug.log file:



LOG: MAIN

<= root @local.domain <mailto:root@local.domain> U=root P=local S=280

LOG: MAIN PANIC

failed to expand "${lookup mysql {select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'}{$vaule}}" while checking a
list: lookup of "select domain from user where mailadress =
'-d@local.domain'" gave DEFER: unexpected slash in MySQL server hostname:
localhost/exim



.. snip



Well .. I'm starting to PANIC as well ;-)



I would be nice if someone could write a tutorial for us newbies on how to
make MySQL work with exim.



Cheers,



Flemming



--

--

## List details at http://www.exim.org/mailman/listinfo/exim-users Exim
details at http://www.exim.org/ ##


Salamis Group of Companies - WWW.SALAMISGROUP.COM

This communication contains information which is confidential and may
also be privileged. It is for the exclusive use of the intended
recipient(s). If you are not the intended recipient(s) be advised
that any form of distribution, copying or use of this communication
or the information it contains is strictly prohibited and may be
unlawful. We apologise if you have received this communication in
error. Please return it to the sender immediately, delete this
communication from your computer and destroy any copies of it. Any
views/opinions expressed in this email are that of the author and may
not reflect the views of Salamis (M&I)Ltd.
SV: I can't get MYSQL to work with Exim 4.05 [ In reply to ]
I changed the command line to:


>exim -d -v postmaster@local.domain 2> debug.log

From: postmaster@local.domain
To: post@local.virtualdomain
Subject: test

test
^D

And now it actually process the mail .. BUT it sends the mail TO: postmaster@local.domain and NOT post@local.virtualdomain !!!!

- Flemming



-----Oprindelig meddelelse-----
Fra: Flemming Christensen
Sendt: 24. juli 2002 15:52
Til: Mark McRitchie
Cc: Exim Users (E-mail)
Emne: SV: [Exim] I can't get MYSQL to work with Exim 4.05


After changing mysql_servers I get this from the debug.log

LOG: MAIN
<= root@local.domain U=root P=local S=280
LOG: MAIn
** -d@local.domain Unrouteable address

.. snip

it seems that my router is tasting the sender and not the receiver ?!?!

$local_part = "-d"
$domain = "local.domain"

or am I just confused about everything ?????

thanks for helping

Flemming

-----Oprindelig meddelelse-----
Fra: Mark McRitchie [mailto:Mark.McRitchie@salamis.co.uk]
Sendt: 24. juli 2002 15:42
Til: Flemming Christensen
Cc: Exim Users (E-mail)
Emne: RE: [Exim] I can't get MYSQL to work with Exim 4.05


Try:

hide mysql_servers = localhost/exim/root/password

Or even:

hide mysql_servers = /exim/root/password

Its <server>/<db name>/<username>/<passwd>

Check Section 9.14 of the spec
(http://www.exim.org/exim-html-4.00/doc/html/spec_9.html#SECT9.14)

HTH,
Mark.

-----Original Message-----
From: Flemming Christensen [mailto:fc@dsidata.dk]
Sent: 24 July 2002 14:32
To: Exim-Users (E-mail)
Subject: [Exim] I can't get MYSQL to work with Exim 4.05


This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
I have searched google .. read the FAQ's and the archives and I still can't
figure out how to use mysql with exim.



This is what I have done:



Compiled exim with mysql support



Created a mysql database:

Mysql database:exim

Mysql table: user (fields: userid, user, mailaddress, mailboxpath,
homedir, domain, localonly) mailaddress = user@domain

domain (field: domain)



userid is the localuser account

user is the users initials



This is what I need to do:



1. If a localonly user from a virtual domain tries to send to nonlocal users
the mail should bounce other users should be able to send to nonlocal users

2. mail to nonexisient users should bounce

3. mail to virtual users should be delivered to mailboxpath



This is what I have tried:



configure script:



... snip



mysql_servers = localhost/exim/user/root/password



mysql_domain = select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'

mysql_mailbox = select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'

mysql_user = select userid from user where
mailaddress='${quote_mysql:$local_part@$domain}'



.. snip



begin routers



.. snip



virtual_local_user:

driver = accept

domains = ${lookup mysql {mysql_domain}{$vaule}}

condition = ${lookup mysql {mysql_user}{$vaule}}

transport = virtual_delivery



localuser:

driver = accept

check_local_user

transport = local_delivery



begin transports



.. snip



virtual_delivery:

driver = appendfile

file = ${lookup mysql {mysql_mailbox}{$value}}

delivery_date_add

envelope_add

return_path_add

user = mail

group = mail

create_directory



.. snip



-- EOF



When I try to test the setup with



---

>exim -v postmaster@local.domain -d 2> debug.log

From: postmaster@local.domain

To: post@local.virtualdomain

Subject: test



test

^D



------



I get this in the debug.log file:



LOG: MAIN

<= root @local.domain <mailto:root@local.domain> U=root P=local S=280

LOG: MAIN PANIC

failed to expand "${lookup mysql {select domain from user where
mailaddress='${quote_mysql:$local_part@$domain}'}{$vaule}}" while checking a
list: lookup of "select domain from user where mailadress =
'-d@local.domain'" gave DEFER: unexpected slash in MySQL server hostname:
localhost/exim



.. snip



Well .. I'm starting to PANIC as well ;-)



I would be nice if someone could write a tutorial for us newbies on how to
make MySQL work with exim.



Cheers,



Flemming



--

--

## List details at http://www.exim.org/mailman/listinfo/exim-users Exim
details at http://www.exim.org/ ##


Salamis Group of Companies - WWW.SALAMISGROUP.COM

This communication contains information which is confidential and may
also be privileged. It is for the exclusive use of the intended
recipient(s). If you are not the intended recipient(s) be advised
that any form of distribution, copying or use of this communication
or the information it contains is strictly prohibited and may be
unlawful. We apologise if you have received this communication in
error. Please return it to the sender immediately, delete this
communication from your computer and destroy any copies of it. Any
views/opinions expressed in this email are that of the author and may
not reflect the views of Salamis (M&I)Ltd.



--

## List details at http://www.exim.org/mailman/listinfo/exim-users Exim details at http://www.exim.org/ ##
Re: I can't get MYSQL to work with Exim 4.05 [ In reply to ]
Pardon me for jumping in late with a new question, but what is the assumed
advantage of compiling exim to work with a MySQL database? Will it improve
performance, speed or storage issues? Just curious, as I am wrestling with
these types of issues. Thanks, Mike

----- Original Message -----
From: "Flemming Christensen" <fc@dsidata.dk>
To: "Mark McRitchie" <Mark.McRitchie@salamis.co.uk>
Cc: "Exim Users (E-mail)" <exim-users@exim.org>
Sent: Wednesday, July 24, 2002 8:21 AM
Subject: SV: [Exim] I can't get MYSQL to work with Exim 4.05


> I changed the command line to:
>
>
> >exim -d -v postmaster@local.domain 2> debug.log
>
> From: postmaster@local.domain
> To: post@local.virtualdomain
> Subject: test
>
> test
> ^D
>
> And now it actually process the mail .. BUT it sends the mail TO:
postmaster@local.domain and NOT post@local.virtualdomain !!!!
>
> - Flemming
>
>
>
> -----Oprindelig meddelelse-----
> Fra: Flemming Christensen
> Sendt: 24. juli 2002 15:52
> Til: Mark McRitchie
> Cc: Exim Users (E-mail)
> Emne: SV: [Exim] I can't get MYSQL to work with Exim 4.05
>
>
> After changing mysql_servers I get this from the debug.log
>
> LOG: MAIN
> <= root@local.domain U=root P=local S=280
> LOG: MAIn
> ** -d@local.domain Unrouteable address
>
> .. snip
>
> it seems that my router is tasting the sender and not the receiver ?!?!
>
> $local_part = "-d"
> $domain = "local.domain"
>
> or am I just confused about everything ?????
>
> thanks for helping
>
> Flemming
>
> -----Oprindelig meddelelse-----
> Fra: Mark McRitchie [mailto:Mark.McRitchie@salamis.co.uk]
> Sendt: 24. juli 2002 15:42
> Til: Flemming Christensen
> Cc: Exim Users (E-mail)
> Emne: RE: [Exim] I can't get MYSQL to work with Exim 4.05
>
>
> Try:
>
> hide mysql_servers = localhost/exim/root/password
>
> Or even:
>
> hide mysql_servers = /exim/root/password
>
> Its <server>/<db name>/<username>/<passwd>
>
> Check Section 9.14 of the spec
> (http://www.exim.org/exim-html-4.00/doc/html/spec_9.html#SECT9.14)
>
> HTH,
> Mark.
>
> -----Original Message-----
> From: Flemming Christensen [mailto:fc@dsidata.dk]
> Sent: 24 July 2002 14:32
> To: Exim-Users (E-mail)
> Subject: [Exim] I can't get MYSQL to work with Exim 4.05
>
>
> This is a multi-part message in MIME format.
> --
> [ Picked text/plain from multipart/alternative ]
> I have searched google .. read the FAQ's and the archives and I still
can't
> figure out how to use mysql with exim.
>
>
>
> This is what I have done:
>
>
>
> Compiled exim with mysql support
>
>
>
> Created a mysql database:
>
> Mysql database:exim
>
> Mysql table: user (fields: userid, user, mailaddress, mailboxpath,
> homedir, domain, localonly) mailaddress = user@domain
>
> domain (field: domain)
>
>
>
> userid is the localuser account
>
> user is the users initials
>
>
>
> This is what I need to do:
>
>
>
> 1. If a localonly user from a virtual domain tries to send to nonlocal
users
> the mail should bounce other users should be able to send to nonlocal
users
>
> 2. mail to nonexisient users should bounce
>
> 3. mail to virtual users should be delivered to mailboxpath
>
>
>
> This is what I have tried:
>
>
>
> configure script:
>
>
>
> ... snip
>
>
>
> mysql_servers = localhost/exim/user/root/password
>
>
>
> mysql_domain = select domain from user where
> mailaddress='${quote_mysql:$local_part@$domain}'
>
> mysql_mailbox = select domain from user where
> mailaddress='${quote_mysql:$local_part@$domain}'
>
> mysql_user = select userid from user where
> mailaddress='${quote_mysql:$local_part@$domain}'
>
>
>
> .. snip
>
>
>
> begin routers
>
>
>
> .. snip
>
>
>
> virtual_local_user:
>
> driver = accept
>
> domains = ${lookup mysql {mysql_domain}{$vaule}}
>
> condition = ${lookup mysql {mysql_user}{$vaule}}
>
> transport = virtual_delivery
>
>
>
> localuser:
>
> driver = accept
>
> check_local_user
>
> transport = local_delivery
>
>
>
> begin transports
>
>
>
> .. snip
>
>
>
> virtual_delivery:
>
> driver = appendfile
>
> file = ${lookup mysql {mysql_mailbox}{$value}}
>
> delivery_date_add
>
> envelope_add
>
> return_path_add
>
> user = mail
>
> group = mail
>
> create_directory
>
>
>
> .. snip
>
>
>
> -- EOF
>
>
>
> When I try to test the setup with
>
>
>
> ---
>
> >exim -v postmaster@local.domain -d 2> debug.log
>
> From: postmaster@local.domain
>
> To: post@local.virtualdomain
>
> Subject: test
>
>
>
> test
>
> ^D
>
>
>
> ------
>
>
>
> I get this in the debug.log file:
>
>
>
> LOG: MAIN
>
> <= root @local.domain <mailto:root@local.domain> U=root P=local S=280
>
> LOG: MAIN PANIC
>
> failed to expand "${lookup mysql {select domain from user where
> mailaddress='${quote_mysql:$local_part@$domain}'}{$vaule}}" while checking
a
> list: lookup of "select domain from user where mailadress =
> '-d@local.domain'" gave DEFER: unexpected slash in MySQL server hostname:
> localhost/exim
>
>
>
> .. snip
>
>
>
> Well .. I'm starting to PANIC as well ;-)
>
>
>
> I would be nice if someone could write a tutorial for us newbies on how to
> make MySQL work with exim.
>
>
>
> Cheers,
>
>
>
> Flemming
>
>
>
> --
>
> --
>
> ## List details at http://www.exim.org/mailman/listinfo/exim-users Exim
> details at http://www.exim.org/ ##
>
>
> Salamis Group of Companies - WWW.SALAMISGROUP.COM
>
> This communication contains information which is confidential and may
> also be privileged. It is for the exclusive use of the intended
> recipient(s). If you are not the intended recipient(s) be advised
> that any form of distribution, copying or use of this communication
> or the information it contains is strictly prohibited and may be
> unlawful. We apologise if you have received this communication in
> error. Please return it to the sender immediately, delete this
> communication from your computer and destroy any copies of it. Any
> views/opinions expressed in this email are that of the author and may
> not reflect the views of Salamis (M&I)Ltd.
>
>
>
> --
>
> ## List details at http://www.exim.org/mailman/listinfo/exim-users Exim
details at http://www.exim.org/ ##
>
>
>
Re: I can't get MYSQL to work with Exim 4.05 [ In reply to ]
On Wed, 24 Jul 2002, Admin - SafelistSmart wrote:

> Pardon me for jumping in late with a new question, but what is the assumed
> advantage of compiling exim to work with a MySQL database? Will it improve
> performance, speed or storage issues? Just curious, as I am wrestling with

could be all of these. one thing is for sure, it's much easier to
write certain lookups in sql than to write the same thing for a
moderately-complicated structure flat file


ps. could we please pick up the habit of trimming posts ?

--
[-]