• 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.
  • 相关阅读:
    12、【常见算法】跳台阶问题
    11、【常见算法】编写CString类
    10、【常见算法】单链表逆置输出
    9、【常见算法】数组重排
    8、【常见算法】查找数组中重复元素
    7、【常见算法】数组元素查找
    6、【常见算法】整数拆分
    5、【常见算法】从长度为n的数组(元素互不相同)中任意选择m个数的所有组合。
    vi 常用命令
    Nutz框架的优点
  • 原文地址:https://www.cnblogs.com/xianzhedeyu/p/3591379.html
Copyright © 2020-2023  润新知