mysql silently failing to start - suggestions?
nightrecon at hotmail.com
Mon Feb 1 04:35:46 UTC 2010
> If this isn't the right list - if I should try another let me know -
> but since this is the mysql-server-5.4.2 package, and since you
> folks have been so helpful, I thought I'd give it a go.
> Anyway, the system is 8.0-RELEASE and that package is installed,
> and I can't start the server. Not only can I not start the server,
> but it's not giving me a clue. I can't find anything anywhere.
> Not in /var/log/messages, not anywhere. When I run
> /usr/local/etc/rc.d/mysqlserver start
> it says "Starting mysql.", pauses for several seconds (I don't see
> anything go by in "top") and then the script exits. At that point,
> one would expect, there's no /tmp/mysql.sock, there's nothing
> in messages or anywhere else. With nothing to go on, well, I don't
> know where to start. Any suggestions?
First is there a mysql_enable="YES" line in /etc/rc.conf? The rc subr
startup system requires it and also the complete path as you did type above.
Although since it is mysql-server and you got a response I'll assume the
above is just a typo here in this mail.
If you have changed the location of the database files this variable will
need setting in /etc/rc.conf as well. The default is /var/db/mysql. Notice
this directory should be owned by the mysql:mysql user/group combo. This
will allow for the writing of the <machine-hostname>.pid file. There will
also be a <machine-hostname>.err file which is the log you need to look at.
If these files are not present it is either not getting that far in the
startup, or there is a permissions problem. The normal location of the
socket is /tmp, which should be permissions 1777 (sticky bit set).
You do have a line setting the hostname of the machine in /etc/rc.conf too,
right? Such as hostname="testbed.test.zip" for my local dev server at home.
This should be resolvable either by DNS or a hosts file. Also, be aware that
the location of the my.cnf file is now /usr/local/etc, although should this
be missing it should still look for it in /var/db/mysql as a fallback. If
this file is world writable MySQL will ignore it.
The establishment of the mysql user and group should have occurred as part
of the port installation. I use ports and not packages, as well as the older
version of 5.1.42 so I cannot speak to the efficacy of installing a package
of 5.4.x. Perhaps a package problem? Try installing the 5.1.42 port using
the ports system instead is one possibility if such may be the case.
More information about the freebsd-questions