Bug #32163 Change in mysqld_safe operation
Submitted: 7 Nov 2007 16:07 Modified: 29 Nov 2007 12:07
Reporter: Ronald Bradford Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: General Severity:S3 (Non-critical)
Version:6.0.3 OS:Linux (2.6.18-8.1.15.el5 x86_64)
Assigned to: CPU Architecture:Any
Tags: mysqld_safe, starting

[7 Nov 2007 16:07] Ronald Bradford
Description:
On client site doing 4.1 to 5.0 migration. Trying 6.0 with a few free cycles for comparisons on loading data times, data sizing and query execution time.

Repeating the steps of installation with MySQL Version 5 on MySQL Version 6 had the startup of MySQL fail.

In absence of a general 6.0 Documentation Page it's important that differences are documented.  

Startup failure makes reference to  http://dev.mysql.com/doc/mysql/en/mysqld_safe.html

This page indicates that what I'm doing in 5 is correct, however it doesn't work in 6.

How to repeat:
# Installation of 5.0 is performed with the following commands

su -
cd /opt/mysql
tar xvfz mysql-enterprise-gpl-5.0.44sp1a-linux-x86_64-glibc23.tar.gz
ln -s mysql-enterprise-gpl-5.0.44sp1a-linux-x86_64-glibc23 mysql
chown -R mysql:mysql mysql-enterprise-gpl-5.0.44sp1a-linux-x86_64-glibc23
su - mysql
cd /opt/mysql/mysql
MYSQL_HOME=`pwd`;export MYSQL_HOME
PATH=$MYSQL_HOME/bin:$PATH; export PATH
scripts/mysql_install_db
bin/mysqld_safe & 

MySQL Starts.
Later addition of /opt/mysql/mysql/my.cnf for additional instances

#MySQL 6 Installation

su -
cd /opt/mysql
tar xvfz mysql-6.0.3-alpha-linux-x86_64-glibc23.tar.gz
ln -s  mysql-6.0.3-alpha-linux-x86_64-glibc23 mysql6
chown -R mysql:mysql mysql-6.0.3-alpha-linux-x86_64-glibc23
su - mysql
cd /opt/mysql/mysql6
MYSQL_HOME=`pwd`;export MYSQL_HOME
PATH=$MYSQL_HOME/bin:$PATH; export PATH
echo "[mysqld]
basedir=/opt/mysql/mysql6
datadir=/opt/mysql/mysql6/data

log-error=/var/log/mysql/mysql6.error.log
port=3366
socket=/tmp/mysql.sock.3366

[mysqld_safe]
port=3366
socket=/tmp/mysql.sock.3366

[mysql]
port=3366
socket=/tmp/mysql.sock.3366

[client]
port=3366
socket=/tmp/mysql.sock.3366
" > /opt/mysql/mysql6/my.cnf

scripts/mysql_install_db
bin/mysqld_safe & 

 bin/mysqld_safe &
071107 10:05:14 mysqld_safe Logging to '/var/log/mysql/mysql6.error.log'.
071107 10:05:14 mysqld_safe The file /usr/local/mysql/bin/mysqld
does not exist or is not executable. Please cd to the mysql installation
directory and restart this script from there as follows:
./bin/mysqld_safe&
See http://dev.mysql.com/doc/mysql/en/mysqld_safe.html for more information

Suggested fix:
Make mysqld_safe in 6 work like in 5.
[7 Nov 2007 16:21] Ronald Bradford
My workaround to make it Compatible with 5 was.

bin/mysqld_safe
207 if test -f ./share/mysql/english/errmsg.sys -a -x ./bin/mysqld

Replace with

207 if test -f ./share/english/errmsg.sys -a -x ./bin/mysqld
[28 Nov 2007 23:22] Jeffrey Pugh
Looks like this is a duplicate of 32679
[29 Nov 2007 12:07] Daniel Fischer
Duplicate of bug#32679.