Error with mysqld_safe

出处:http://bugs.mysql.com/bug.php?id=18403

Description:

 - I downloaded the binary file “Standard 5.0.19” of “Linux (non RPM package)”

 - Later, I executed the following commands (such as suggested in the documentation - http://dev.mysql.com/doc/refman/5.0/en/installing-binary.html):



shell> groupadd mysql

shell> useradd -g mysql mysql

shell> cd /usr/local

shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -

shell> ln -s full-path-to-mysql-VERSION-OS mysql

shell> cd mysql

[root@... mysql]# scripts/mysql_install_db –user=mysql

[root@... mysql]# scripts/mysql_install_db --user=mysql

Installing all prepared tables

Fill help tables



To start mysqld at boot time you have to copy support-files/mysql.server

to the right place for your system



PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !

To do so, start the server, then issue the following commands:

./bin/mysqladmin -u root password 'new-password'

./bin/mysqladmin -u root -h panthro.THUNDERA password 'new-password'

See the manual for more instructions.



NOTE:  If you are upgrading from a MySQL <= 3.22.10 you should run

the ./bin/mysql_fix_privilege_tables. Otherwise you will not be

able to use the new GRANT command!



You can start the MySQL daemon with:

cd . ; ./bin/mysqld_safe &



You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:

cd sql-bench ; perl run-all-tests



Please report any problems with the ./bin/mysqlbug script!



The latest information about MySQL is available on the web at

http://www.mysql.com

Support MySQL by buying support/licenses at https://order.mysql.com



[root@... mysql]# chown -R root  .

[root@... mysql]# chown -R mysql data

[root@... mysql]# chgrp -R mysql .

[root@... mysql]# bin/mysqld_safe --user=mysql &

Starting mysqld daemon with databases from /var/lib/mysql

STOPPING server from pid file /var/run/mysqld/mysqld.pid

060321 12:10:28  mysqld ended



[the pc was processing during some minutes, but I didn't got reply... So, I press <ENTER>]

[1]+  Done                    bin/mysqld_safe –user=mysql

[root@panthro mysql]#



The message created in log file is:

060321 12:12:21  mysqld started

060321 12:12:22  InnoDB: Database was not shut down normally!

InnoDB: Starting crash recovery.

InnoDB: Reading tablespace information from the .ibd files...

InnoDB: Restoring possible half-written data pages from the doublewrite

InnoDB: buffer...

060321 12:12:22  InnoDB: Starting log scan based on checkpoint at

InnoDB: log sequence number 0 36808.

InnoDB: Doing recovery: scanned up to log sequence number 0 43655

060321 12:12:22  InnoDB: Starting an apply batch of log records to the database...

InnoDB: Progress in percents: 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

InnoDB: Apply batch completed

060321 12:12:22  InnoDB: Started; log sequence number 0 43655

060321 12:12:22 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 13)

060321 12:12:22 [ERROR] Can't start server: can't create PID file: Permission denied

060321 12:12:22  mysqld ended



How to repeat:

The bug can be repeated executing the same commands I executed. This is detailed in description of the problem above.

Suggested fix:

I don't know.... but I think it's related with any configuration PATH or permission.
Thank you for a problem report. Please, send the results of the following commads:



ls -l /var/run

ls -l /var/run/mysqld



I think, it is not a bug, but just a result of call with "-user=mysql"...
 
Thank you for a problem report. Please, send the results of the following commads:



ls -l /var/run

ls -l /var/run/mysqld



I think, it is not a bug, but just a result of call with "-user=mysql"...
[23 Mar 2006 17:47] Aquila Chaves
The results of the commands are:

ls -l /var/run

ls -l /var/run/mysqld



[aquila@panthro ~]$ ls -l /var/run

total 264

srw-rw-rw-  1 root    root       0 Mar 23 14:39 acpid.socket

-rw-r--r--  1 root    root       5 Mar 23 14:39 atd.pid

-rw-r--r--  1 root    root       5 Mar 23 14:38 auditd.pid

drwxr-xr-x  2 root    root    4096 Mar 23 14:39 console

-rw-r--r--  1 root    root       5 Mar 23 14:39 crond.pid

-rw-r--r--  1 root    root       5 Mar 23 14:39 cups-config-daemon.pid

-rw-r--r--  1 root    root       5 Mar 23 14:39 cupsd.pid

drwxr-xr-x  2 root    root    4096 Mar 23 14:39 dbus

-rw-r--r--  1 root    root       5 Mar 23 14:39 gdm.pid

-rw-r--r--  1 root    root       5 Mar 23 14:39 gpm.pid

-rw-r--r--  1 root    root       5 Mar 23 14:39 haldaemon.pid

-rw-------  1 root    root       5 Mar 23 14:38 klogd.pid

drwx------  2 root    root    4096 May 16  2005 mdadm

drwx------  2 root    root    4096 May 16  2005 mdmpd

-rw-r--r--  1 nobody  root       5 Mar 23 14:39 mDNSResponder.pid

-rw-r--r--  1 root    root       5 Mar 23 14:39 messagebus.pid

drwxr-xr-x  2 root    root    4096 Mar 21 10:51 mysqld

drwxrwx---  2 named   named   4096 May 17  2005 named

drwxrwxr-x  2 root    root    4096 May 25  2005 netreport

-rw-r--r--  1 root    root       5 Mar 23 14:39 nifd.pid

drwxr-xr-x  2 root    root    4096 May 30  2005 nscd

drwxr-xr-x  2 root    root    4096 Nov  2  2004 ppp

drwxr-xr-x  2 pvm     pvm     4096 Mar  8  2005 pvm3

-rw-r--r--  1 rpcuser rpcuser    5 Mar 23 14:38 rpc.statd.pid

drwxr-xr-x  2 root    root    4096 Apr 13  2005 saslauthd

drwxrwxr-x  2 root    screen  4096 Feb 23 13:48 screen

-rw-r--r--  1 root    root       5 Mar 23 14:39 sshd.pid

drwx------  4 root    root    4096 Jan 18 13:24 sudo

-rw-------  1 root    root       5 Mar 23 14:38 syslogd.pid

drwx------  2 root    root    4096 May 23  2005 usb

-rw-rw-r--  1 root    utmp    4992 Mar 23 14:40 utmp

drwxr-xr-x  2 root    root    4096 May  2  2005 winbindd

-rw-r--r--  1 root    root       6 Mar 23 14:39 xfs.pid



and....



[aquila@panthro ~]$ ls -l /var/run/mysqld

total 0



Any answer??

Thank
[26 Apr 2006 15:08] Valeriy Kravchuk
Sorry for a long delay with this bug report. Please, try to repeat with a newer version, 5.0.20a, and inform about the results.
[26 May 2006 23:00] Bugs System
No feedback was provided for this bug for over a month, so it is

being suspended automatically. If you are able to provide the

information that was originally requested, please do so and change

the status of the bug back to "Open".
[5 Jun 2006 19:16] Amit Chopra
I downloads 5.0.22 for Linux (x86, glibc-2.2, "standard" is static, gcc), and I see the same problem. I followed the summary steps listed in the beginning of the INSTALL-BINARY file.
[4 Sep 2006 14:41] Radhakrishnan Mani
shell> groupadd mysql

shell> useradd -g mysql mysql

shell> cd /usr/local

shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -

shell> ln -s full-path-to-mysql-VERSION-OS mysql

shell> cd mysql

[root@... mysql]# scripts/mysql_install_db –user=mysql

[root@... mysql]# scripts/mysql_install_db --user=mysql

Installing all prepared tables

Fill help tables



To start mysqld at boot time you have to copy support-files/mysql.server

to the right place for your system



PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !

To do so, start the server, then issue the following commands:

./bin/mysqladmin -u root password 'new-password'

./bin/mysqladmin -u root -h panthro.THUNDERA password 'new-password'

See the manual for more instructions.



NOTE:  If you are upgrading from a MySQL <= 3.22.10 you should run

the ./bin/mysql_fix_privilege_tables. Otherwise you will not be

able to use the new GRANT command!



You can start the MySQL daemon with:

cd . ; ./bin/mysqld_safe &



You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:

cd sql-bench ; perl run-all-tests



Please report any problems with the ./bin/mysqlbug script!



The latest information about MySQL is available on the web at

http://www.mysql.com

Support MySQL by buying support/licenses at https://order.mysql.com



[root@... mysql]# chown -R root  .

[root@... mysql]# chown -R mysql data

[root@... mysql]# chgrp -R mysql .

[root@... mysql]# bin/mysqld_safe --user=mysql &

Starting mysqld daemon with databases from /var/lib/mysql

STOPPING server from pid file /var/run/mysqld/mysqld.pid

060321 12:10:28  mysqld ended



[the pc was processing during some minutes, but I didn't got reply... So, I

press <ENTER>]

[1]+  Done                    bin/mysqld_safe –user=mysql

[root@panthro mysql]#



The message created in log file is:

060321 12:12:21  mysqld started

060321 12:12:22  InnoDB: Database was not shut down normally!

InnoDB: Starting crash recovery.

InnoDB: Reading tablespace information from the .ibd files...

InnoDB: Restoring possible half-written data pages from the doublewrite

InnoDB: buffer...

060321 12:12:22  InnoDB: Starting log scan based on checkpoint at

InnoDB: log sequence number 0 36808.

InnoDB: Doing recovery: scanned up to log sequence number 0 43655

060321 12:12:22  InnoDB: Starting an apply batch of log records to the

database...

InnoDB: Progress in percents: 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78

79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

InnoDB: Apply batch completed

060321 12:12:22  InnoDB: Started; log sequence number 0 43655

060321 12:12:22 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file

'/var/run/mysqld/mysqld.pid' (Errcode: 13)

060321 12:12:22 [ERROR]
[16 Sep 2006 12:58] Valeriy Kravchuk
All reporters:



Please, try to repeat again with latest 5.0.24a binaries. In case of same behaviour, please, send exact URL used to download.
[4 Oct 2006 4:03] matt mcglynn
I have reproduced this problem using the mysql-5.0.24a.tar.gz source distribution, building on FreeBSD 5.4-RELEASE.



Specific problems:

1- `bin/mysql_install_db --user=mysql` reports no errors but does *not* create any files under /usr/local/mysql/var/mysql/ (meaning, the grants tables don't appear to exist)



2- `bin/mysqld_safe` errors out:

root@itx# bin/mysqld_safe 

Starting mysqld daemon with databases from /usr/local/mysql/var

STOPPING server from pid file /usr/local/mysql/var/itx.sitefoundry.com.pid

061003 20:45:13  mysqld ended



The log under mysql/var/[hostname].err shows many lines of InnoDB messages, and then: 

061003 20:51:09 [ERROR] /usr/local/mysql/libexec/mysqld: Can't create/write to file '/usr/local/mysql/var/itx.sitefoundry.com.pid' (Errcode: 13)

061003 20:51:09 [ERROR] Can't start server: can't create PID file: Permission denied



I've also tried passing mysqld_safe a different --pid-file with equally bad results:



061003 20:54:52 [ERROR] /usr/local/mysql/libexec/mysqld: Can't create/write to file '/var/run/mysqld' (Errcode: 13)

061003 20:54:52 [ERROR] Can't start server: can't create PID file: Permission denied

061003 20:54:52  mysqld ended
[13 Oct 2006 15:12] Valeriy Kravchuk
All reporters:



Please, try to repeat again with latest 5.0.26 binaries.
[17 Oct 2006 1:41] David Lee
I had this same problem while restoring a database from a backup to a new server.  The problem is as originally guessed ... that is the mysql us being run with -user=mysql ... but the /var/run/mysql directory is owned by root.



Do this



chown mysql /var/run/mysql



This solved my identical problem
[14 Nov 2006 0:00] Bugs System
No feedback was provided for this bug for over a month, so it is

being suspended automatically. If you are able to provide the

information that was originally requested, please do so and change

the status of the bug back to "Open".
[16 Nov 2006 10:02] [ name withheld ]
I saw the same problem too and found that there was a my.cnf file already in /etc.So i knew that it was because i chose the standard packages when installing operating system, by doing this some files of mysql would be created.

Then i replaced /etc/my.cnf with mysql-install-directory/support-files/my-large.cnf,and go on in the following steps:

[root@... mysql]# scripts/mysql_install_db --user=mysql

[root@... mysql]# chown -R root  .

[root@... mysql]# chown -R mysql data

[root@... mysql]# chgrp -R mysql .

[root@... mysql]# bin/mysqld_safe --user=mysql &
[16 Nov 2006 10:02] [ name withheld ]
I saw the same problem too and found that there was a my.cnf file already in /etc.So i knew that it was because i chose the standard packages when installing operating system, by doing this some files of mysql would be created.

Then i replaced /etc/my.cnf with mysql-install-directory/support-files/my-large.cnf,and go on in the following steps:

[root@... mysql]# scripts/mysql_install_db --user=mysql

[root@... mysql]# chown -R root  .

[root@... mysql]# chown -R mysql data

[root@... mysql]# chgrp -R mysql .

[root@... mysql]# bin/mysqld_safe --user=mysql &
[8 Mar 2009 13:38] khalid khalifa
Hi, I had the same issue. What i did is instead of the commane line: shown -R mysql . i used this: shown mysql full-path-to-mysql-binaries



best luck.

你可能感兴趣的:(mysqld)