This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

mysqld no longer starts

Since my most recent upgrade, mysqld will not start any more.  I get
the following errors:

$ /usr/sbin/mysqld
140507  9:48:28 [ERROR] Can't find messagefile '/usr/share/mysql/errmsg.sys'
140507  9:48:28 [Warning] Can't create test file
140507  9:48:28 [Warning] Can't create test file
/cygdrive/c/cygwin/usr/sbin/mysqld: Can't change dir to
'/var/lib/mysql/' (Errcode: 2)
140507  9:48:28 [ERROR] Aborting

140507  9:48:28 [Note]

I have been using mysqld under cygwin pretty heavily for development
work for the last year, and never encountered this problem before.

I'm not sure why it's reporting that it can't cd to /var/lib/mysql/
... I can cd to that directory from the bash prompt.  I can also
create the test files it is complaining it can't create.  I checked
the mysqld executable to see if it might now be using setuid or
something, but permissions seem normal:
$ ls -l /usr/sbin/mysqld.exe
-rwxr-xr-x 1 username Domain Users 9112605 Dec  6 03:24 /usr/sbin/mysqld.exe

I found some references to the Can't find messagefile
'/usr/share/mysql/errmsg.sys' error ... supposedly this can be fixed
with a symbolic link into a /usr/share/mysql subdirectory, or by
passing a configuration option to mysqld indicating what language to
use.  I tried all of the suggestions I found, but continued to get the
same message.  Even when I told mysql to look in a different directory
besides /usr/share/mysql, it still reported it could not find this
file in this location, and it reports the same even when this file
exists as a symbolic link to an existing file.

I did some tinkering with my LANG and LC* environment variables, but I
don't know a whole lot about these (yet), and none of them made any
difference.  I did notice that LANG is set to en_US.UTF-8 - I'm not
sure if that's changed recently or not, but it looks different to me.
I noticed that the recently upgraded base-files 4.2-2 package might
have affected this, but I'm not sure if any of this is even related.
I'd be happy to live without any locale variable features at all -
tried setting LANG=C but that didn't help.

I ran strace /usr/sbin/mysqld to try to see what it was doing, but
oddly enough, when I run mysqld under strace, the problem goes away!
The server comes up and I can connect to it, execute commands, create
and drop databases.  Unfortunately I can't run this way all the time!

One other thing that I have noticed - I have a custom compiled copy of
mintty, and it stopped working at the same time.  The packaged version
of mintty continues to work just fine, but when I launch my own
mintty, I get:
/bin/sh: No such file or directory
and then it hangs until I close the window.  I don't think it's saying
it can't find /bin/sh, but I'm not sure what it's looking for.  I have
no idea if these two problems (mysqld and my custom mintty) are
related, but they both started when I upgraded yesterday.  I upgrade
frequently - sometimes daily, although sometimes I go 2-3 weeks
without if I get busy.  I've been living on the bleeding edge of
cygwin for over ten years - and it's been ten years since I last
remember something being seriously broken for me like this.  That's a
pretty good track record. :)

Can anybody help me get mysqld working again?

My cygcheck -s -v -r output is attached - username, domain name, and
some other stuff has been redacted.

Attachment: cygcheck.out
Description: Binary data

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]