Andrus and Kevin, You were both right, it was some kind of reverse lookup issue on the Mysql side that prevents logging in. I was confused about that and adding the IP address to the Mysql user resolved the issue.
Thanks, Muzaffer > -----Original Message----- > From: Andrus Adamchik [mailto:[EMAIL PROTECTED] > Sent: Sunday, April 20, 2008 6:21 AM > To: [email protected] > Subject: Re: Mysql and usernames > > It is not *cayenne* that denies access. It is MySQL server. So that's > where you need to look. Check for instance that reverse DNS from > machine B works for machine A, or enter machine A IP address in the > access table. > > Andrus > > > On Apr 19, 2008, at 12:15 AM, Ozakca, Muzaffer wrote: > > Hi, > > > > I have an issue when I’m trying to connect to a Mysql database on a > > different machine than the one that runs my code. I get this > > exception: > > > > java.sql.SQLException: Access denied for user 'user'@'%' > > > > As you might know, Mysql users consist of a name and a location (or > > % for all locations). For example, you can define [EMAIL PROTECTED] to > > be a user. The user cannot login if s/he is not on “localhost”. > > > > I’m running my code on machineA and the database is on machineB. The > > database user is defined as [EMAIL PROTECTED] I can connect to the > > database using the normal mysql tools on machineA. > > > > The login credentials are specified as > > > > <login userName="user" password="xxx"/> > > > > In the cayenne config file. My question is how can I tell cayenne to > > use a specific machine name (i.e. machine’s DNS name) instead of “%” > > > > I hope I am clear. > > > > Thanks, > > Muzaffer > >
