Eric Day wrote:
> Hi Tom,
>
> The drizzle client was not meant to be used with MySQL, and because
> of that, we don't have socket options turned on (drizzled does not
> listen on any unix domain sockets). If you specify a socket option
> to the drizzle client tool, it's basically ignored and the default
> TCP host is still used.
We should fix that ... I think we should throw an error if the socket
option is specified. We can remove the error when/if we support the
option. Silently changing behavior from what is requested is, well,
evil. (Should be an easy patch for someone)
> Also, libdrizzle supports a MySQL mode with a flag you need to set on
> a connection. This is not exposed as an option to the drizzle client,
> so there is no real way to force it into mysql mode. Right now the
> protocol is close enough that it works without auth, but this will
> not always be the case. Also, the password encryption algorithm is
> different in drizzle mode than MySQL, which is why any type of auth
> fails for you.
Adding this option would be really easy (and perhaps another nice easy
patch) All that is needed is an extra commandline option and then, based
on the value of that option, passing the DRIZZLE_CON_MYSQL flag to
drizzle_con_add_tcp (right now it just passes DRIZZLE_CON_NONE.
SO:
if (drizzle_con_add_tcp(&drizzle, &con, host, opt_drizzle_port, user,
password, database, DRIZZLE_CON_NONE) == NULL)
could (for instance) become:
if (drizzle_con_add_tcp(&drizzle, &con, host, opt_drizzle_port, user,
password, database,
(opt_con_mysql
? DRIZZLE_CON_MYSQL
: DRIZZLE_CON_NONE)) == NULL)
> Just curious, any reason why you want to use 'drizzle' to talk to
> MySQL and not just 'mysql'?
>
> -Eric
>
> On Thu, Jan 07, 2010 at 01:31:40PM -0500, Tom Hanlon wrote:
>> Team Drizzle, and Jay..
>>
>>>>
>>> OK, so it looks like the problem doesn't have to do with grants,
>>> but is isolated to working with Unix domain sockets (as opposed to
>>> TCP port). Drizzle itself does not support Unix domain sockets,
>>> but I'm not sure whether libdrizzle has also dropped support for
>>> it. I've pinged Eric Day for an answer. Regardless, though,
>>> there should be more of a descriptive message than "could not
>>> connect" ;)
>> Both issues exist, socket and auth.
>>
>> No, I think it is both lack of support for domain sockets is issue
>> 1. No big deal once I know that I can workaround.
>>
>> Issue 2 is authentication failure..
>>
>> I was unable to get authentication against MySQL with the drizzle
>> console in any way.
>>
>> I quoted password, unquoted passwords. etc.
>>
>> If I get back to this today, I will capture the TCP traffic and see
>> what the drizzle console does with my password and why MySQL does
>> not agree with it.
>>
>> My Mysql version of course _might_ having something to do with it,
>> but I thought authentication had stabilized about 5 years ago.
>>
>> mysql> select version();
>> +----------------------------------+
>> | version() |
>> +----------------------------------+
>> | 5.1.35-ndb-7.0.7-cluster-gpl-log |
>> +----------------------------------+
>> 1 row in set (0.00 sec)
>>
>> Thanks
>>
>> --
>> Tom
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~drizzle-discuss
>> Post to : [email protected]
>> Unsubscribe : https://launchpad.net/~drizzle-discuss
>> More help : https://help.launchpad.net/ListHelp
>
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help : https://help.launchpad.net/ListHelp
>
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help : https://help.launchpad.net/ListHelp