Bug #18810 MySQL starts before ypbind with SuSE RPMs
Submitted: 5 Apr 2006 14:29 Modified: 15 Jun 2006 4:30
Reporter: David Phillips Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Installing Severity:S3 (Non-critical)
Version:5.0.19 OS:Linux (SuSE 9.3)
Assigned to: Joerg Bruehe

[5 Apr 2006 14:29] David Phillips
Description:
On SuSE 9.3 (not Enterprise Server), MySQL is sometimes set to start before ypbind, which causes a failure on startup (in environments using NIS):

060405 08:50:39  mysqld started
YPBINDPROC_DOMAIN: Domain not bound
YPBINDPROC_DOMAIN: Domain not bound
060405  8:51:19 [ERROR] Fatal error: Can't change to run as user 'mysql' ;  Please check that the user exists!

How to repeat:
Install MySQL from RPMs on SuSE Linux.  Check symlinks in /etc/init.d/rc3.d.

Suggested fix:
Make sure MySQL is always set to start after ypbind.
[5 Apr 2006 15:47] Valerii Kravchuk
Thank you for a problem report. Please, check with a newer version of RPMs, 5.0.19. Send the 

ls -l /etc/init.d/rc3.d
cat /etc/issue
rpm -q -a | grep -i mysql

results after installation.
[11 Apr 2006 16:18] David Phillips
$ ls -l /etc/init.d/rc3.d
total 0
lrwxrwxrwx  1 root root  6 2006-03-28 16:53 K02hal -> ../hal
lrwxrwxrwx  1 root root  7 2005-11-04 12:52 K03cron -> ../cron
lrwxrwxrwx  1 root root  9 2006-03-28 16:52 K04autofs -> ../autofs
lrwxrwxrwx  1 root root 10 2006-03-28 16:52 K04postfix -> ../postfix
lrwxrwxrwx  1 root root  7 2006-03-28 16:52 K05nscd -> ../nscd
lrwxrwxrwx  1 root root  9 2006-03-28 16:52 K05ypbind -> ../ypbind
lrwxrwxrwx  1 root root  8 2006-03-28 16:52 K07mdnsd -> ../mdnsd
lrwxrwxrwx  1 root root  8 2006-03-28 16:52 K07xntpd -> ../xntpd
lrwxrwxrwx  1 root root  9 2006-03-28 16:52 K09hwscan -> ../hwscan
lrwxrwxrwx  1 root root  8 2006-04-11 08:54 K10mysql -> ../mysql
lrwxrwxrwx  1 root root  7 2006-03-28 16:52 K10nrpe -> ../nrpe
lrwxrwxrwx  1 root root  7 2006-03-28 16:52 K10sshd -> ../sshd
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 K11apache -> ../apache
lrwxrwxrwx  1 root root  6 2006-04-11 08:58 K13nfs -> ../nfs
lrwxrwxrwx  1 root root 10 2006-04-11 08:58 K13nfsboot -> ../nfsboot
lrwxrwxrwx  1 root root 10 2006-04-11 08:58 K15portmap -> ../portmap
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 K17syslog -> ../syslog
lrwxrwxrwx  1 root root 10 2006-04-11 08:58 K18network -> ../network
lrwxrwxrwx  1 root root 12 2006-04-11 08:58 K19boot.udev -> ../boot.udev
lrwxrwxrwx  1 root root  7 2006-04-11 08:58 K20dbus -> ../dbus
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 K20resmgr -> ../resmgr
lrwxrwxrwx  1 root root  8 2006-04-11 08:58 K22fbset -> ../fbset
lrwxrwxrwx  1 root root 12 2006-04-11 09:02 K22memcached -> ../memcached
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 K22random -> ../random
lrwxrwxrwx  1 root root  8 2005-11-04 12:46 S01fbset -> ../fbset
lrwxrwxrwx  1 root root 12 2006-04-11 09:02 S01memcached -> ../memcached
lrwxrwxrwx  1 root root  9 2005-11-04 12:45 S01random -> ../random
lrwxrwxrwx  1 root root  7 2005-11-04 12:51 S03dbus -> ../dbus
lrwxrwxrwx  1 root root  9 2005-11-04 12:47 S03resmgr -> ../resmgr
lrwxrwxrwx  1 root root 12 2005-11-04 12:47 S04boot.udev -> ../boot.udev
lrwxrwxrwx  1 root root 10 2005-11-04 13:03 S05network -> ../network
lrwxrwxrwx  1 root root  9 2005-11-04 12:47 S06syslog -> ../syslog
lrwxrwxrwx  1 root root 10 2005-11-04 12:50 S08portmap -> ../portmap
lrwxrwxrwx  1 root root  6 2005-11-04 12:50 S10nfs -> ../nfs
lrwxrwxrwx  1 root root 10 2005-11-04 12:50 S10nfsboot -> ../nfsboot
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 S12apache -> ../apache
lrwxrwxrwx  1 root root  6 2006-04-11 08:58 S13kbd -> ../kbd
lrwxrwxrwx  1 root root  8 2006-04-11 08:58 S13mysql -> ../mysql
lrwxrwxrwx  1 root root  7 2006-04-11 08:58 S13nrpe -> ../nrpe
lrwxrwxrwx  1 root root  7 2006-04-11 08:58 S13sshd -> ../sshd
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 S14hwscan -> ../hwscan
lrwxrwxrwx  1 root root  8 2006-04-11 08:58 S16mdnsd -> ../mdnsd
lrwxrwxrwx  1 root root  8 2006-04-11 08:58 S16xntpd -> ../xntpd
lrwxrwxrwx  1 root root  7 2006-04-11 08:58 S18nscd -> ../nscd
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 S18ypbind -> ../ypbind
lrwxrwxrwx  1 root root  9 2006-04-11 08:58 S19autofs -> ../autofs
lrwxrwxrwx  1 root root 10 2006-04-11 08:58 S19postfix -> ../postfix
lrwxrwxrwx  1 root root  7 2006-04-11 08:58 S20cron -> ../cron
lrwxrwxrwx  1 root root  6 2006-04-11 08:58 S21hal -> ../hal

$ cat /etc/issue

Welcome to SuSE Linux 9.3 (i586) - Kernel \r (\l).

$ rpm -q -a | grep -i mysql
MySQL-shared-5.0.19-0.glibc23
MySQL-server-5.0.19-0.glibc23
MySQL-devel-5.0.19-0.glibc23
MySQL-client-5.0.19-0.glibc23
[12 Apr 2006 7:39] Valerii Kravchuk
Verified as the problem is obvious from the list of files in the last comment.
[14 Jun 2006 10:14] Lenz Grimmer
This looks as if the mysql.server script (which gets installed as /etc/init.d/mysql) should be updated - we should add a line "Should-Start: ypbind" here:

===== mysql.server.sh 1.49 vs edited =====
--- 1.49/support-files/mysql.server.sh  2006-04-06 19:13:39 +02:00
+++ edited/mysql.server.sh      2006-06-14 12:14:02 +02:00
@@ -17,6 +17,7 @@
 ### BEGIN INIT INFO
 # Provides: mysql
 # Required-Start: $local_fs $network $remote_fs
+# Should-Start: ypbind
 # Required-Stop: $local_fs $network $remote_fs
 # Default-Start:  2 3 4 5
 # Default-Stop: 0 1 6

(See the LSB spec at http://refspecs.freestandards.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/initscrcomco... for more info on this)
[14 Jun 2006 11:18] Lenz Grimmer
Please note that we had a similar case reported in BUG#20118 - in addition to "ypbind", please also add "nscd" and "ldap" to the Should-Start: line. That should put us on the safe side. Thank you!
[14 Jun 2006 14:42] Joerg Bruehe
Discussed it in IRC with Lenz, patching.
Fix will be done to 4.1 and merged up.

Using this occasion to add a NTP dependency, so that time adjustments (if any) happen before the server starts.
[14 Jun 2006 16:40] Joerg Bruehe
Patch mail got wrong subject assigned, it fixes both bug#18810 (this one) and bug#20118 ("duplicate" of this, already set to "closed").

Pushed into 4.1.21, 5.0.23, and 5.1.12-beta.

Text proposal for documentation:
The start script for the MySQL server, "/etc/init.d/mysql", now ensures that the system services ypbind, nscd, ldap, and NTP are started first (if these are configured on the machine).
[15 Jun 2006 4:30] Paul Dubois
Noted in 4.1.21, 5.0.23, 5.1.12 changelogs.