Mac OS X mysql launch daemon periodically does not launch on boot - mysql
I have the following .plist launch Daemon in /Library/LaunchDaemons/
Based on the article you posted, I have created the following .plist for the Launch Daemon.
While it seems to be working now, it is still exhibiting the same behavior or starting multiple mysqld processes on boot (which I think is the cause of it sometimes not working). I also have attached the log
phppos-mysql.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>phppos-mysql</string>
<key>Disabled</key>
<false/>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>Program</key>
<string>/Applications/phppos/mysql/bin/mysqld</string>
<key>ProgramArguments</key>
<array>
<string>--defaults-file=/Applications/phppos/mysql/my.cnf</string>
<string>--port=8081</string>
<string>--socket=/Applications/phppos/mysql/tmp/mysql.sock</string>
<string>--datadir=/Applications/phppos/mysql/data</string>
<string>--log-error=/Applications/phppos/mysql/data/mysqld.log</string>
<string>--pid-file=/Applications/phppos/mysql/data/mysqld.pid</string>
<string>--lower-case-table-names=1</string>
<string>--user=_mysql</string>
</array>
<key>UserName</key>
<string>_mysql</string>
<key>GroupName</key>
<string>_mysql</string>
<key>WorkingDirectory</key>
<string>/Applications/phppos/mysql/</string>
<key>Umask</key>
<integer>7</integer>
</dict>
</plist>
log file:
131222 13:46:28 [Note] /Applications/phppos/mysql/bin/mysqld.bin: Normal shutdown
131222 13:46:28 [Note] Event Scheduler: Purging the queue. 0 events
131222 13:46:28 InnoDB: Starting shutdown...
131222 13:46:30 InnoDB: Shutdown completed; log sequence number 0 310408
131222 13:46:30 [Note] /Applications/phppos/mysql/bin/mysqld.bin: Shutdown complete
131222 13:46:43 mysqld_safe Starting mysqld.bin daemon with databases from /Applications/phppos/mysql/data
131222 13:46:43 [Note] Plugin 'FEDERATED' is disabled.
131222 13:46:43 [Note] Plugin 'FEDERATED' is disabled.
131222 13:46:43 InnoDB: Initializing buffer pool, size =131222 13:46:43 InnoDB: Initializing buffer pool, size = 8.0M
131222 13:46:43 InnoDB: Completed initialization of buffer pool
8.0M
131222 13:46:43 InnoDB: Completed initialization of buffer pool
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
131222 13:46:43 InnoDB: Retrying to lock the first data file
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
131222 13:46:49 InnoDB: Started; log sequence number 0 310408
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
131222 13:46:49 [Note] Event Scheduler: Loaded 0 events
131222 13:46:49 [Note] /Applications/phppos/mysql/bin/mysqld.bin: ready for connections.
Version: '5.1.56' socket: '/Applications/phppos/mysql/tmp/mysql.sock' port: 8081 MySQL Community Server (GPL)
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
131222 13:48:25 InnoDB: Unable to open the first data file
InnoDB: Error in opening ./ibdata1
131222 13:48:25 InnoDB: Operating system error number 35 in a file operation.
InnoDB: Error number 35 means 'Resource temporarily unavailable'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/operating-system-error-codes.html
InnoDB: Could not open or create data files.
InnoDB: If you tried to add new data files, and it failed here,
InnoDB: you should now edit innodb_data_file_path in my.cnf back
InnoDB: to what it was, and remove the new ibdata files InnoDB created
InnoDB: in this failed attempt. InnoDB only wrote those files full of
InnoDB: zeros, but did not yet use them in any way. But be careful: do not
InnoDB: remove old data files which contain your precious data!
131222 13:48:25 [ERROR] Plugin 'InnoDB' init function returned error.
131222 13:48:25 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
131222 13:48:25 [ERROR] Unknown/unsupported table type: InnoDB
131222 13:48:25 [ERROR] Aborting
131222 13:48:25 [Note] /Applications/phppos/mysql/bin/mysqld.bin: Shutdown complete
131222 13:48:25 mysqld_safe mysqld from pid file /Applications/phppos/mysql/data/mysqld.pid ended
It's likely the issue is precisely what your last comment was asking about. My understanding is that mysqld_safe runs the mysqld daemon as the user (usually mysql) instead of the root user. This violates the rules for running under launchd (as an unprivileged user), and can’t properly be used.
In terminal issuing the command (while MySql is running):
ps -ef | grep mysqld
should give you the correct arguments to use within ProgramArguments in your plist. The only thing that might need to be changed is:
<string>/Applications/phppos/mysql/bin/mysqld_safe</string>
so that it becomes:
<string>/Applications/phppos/mysql/bin/mysqld</string>
*if problems persist check your my.cnf to ensure it agrees with the arguments within your .plist, and that nothing else happens to be using port 8081. This musing also has some excellent information and insight that might help you understand how launchdaemons work in direct relation to mysql.
I figured out the problem. I had 2 scripts there were starting mysql at the same time. One of the scripts tries to close mysql. if it does that before the second script starts mysql, mysql stops.
The solution was to modify that script to not do anything mysql related.
Related
MAMP Pro can't start MySQL
I had to force a shutdown when my computer froze, and MAMP has been unable to start MySql since then. I have tried deleting the log files from MAMP/DB/mysql and restarting MAMP, but it hasn't worked. I also tried entering sudo killall -9 mysqld in the terminal, to no avail. Here is the error log from MAMP: 2017-05-12 16:05:49 4691 [Note] InnoDB: The log sequence numbers 730255276 and 730255276 in ibdata files do not match the log sequence number 730624549 in the ib_logfiles!2017-05-12 16:05:49 4691 [Note] InnoDB: Database was not shutdown normally! 2017-05-12 16:05:49 4691 [Note] InnoDB: Starting crash recovery. 2017-05-12 16:05:49 4691 [Note] InnoDB: Reading tablespace information from the .ibd files... 2017-05-12 16:05:50 4691 [ERROR] InnoDB: Attempted to open a previously opened tablespace. Previous tablespace mysql/slave_worker_info uses space ID: 5 at filepath: ./mysql/slave_worker_info.ibd. Cannot open tablespace wordpress#0020test#0020site/wp_term_taxonomy which uses space ID: 5 at filepath: ./wordpress#0020test#0020site/wp_term_taxonomy.ibd 2017-05-12 16:05:50 7fff7303b000 InnoDB: Operating system error number 2 in a file operation. InnoDB: The error means the system cannot find the path specified. InnoDB: If you are installing InnoDB, remember that you must create InnoDB: directories yourself, InnoDB does not create them. InnoDB: Error: could not open single-table tablespace file ./wordpress#0020test#0020site/wp_term_taxonomy.ibd InnoDB: We do not continue the crash recovery, because the table may become InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it. InnoDB: To fix the problem and start mysqld: InnoDB: 1) If there is a permission problem in the file and mysqld cannot InnoDB: open the file, you should modify the permissions. InnoDB: 2) If the table is not needed, or you can restore it from a backup, InnoDB: then you can remove the .ibd file, and InnoDB will do a normal InnoDB: crash recovery and ignore that table. InnoDB: 3) If the file system or the disk is broken, and you cannot remove InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf InnoDB: and force InnoDB to continue crash recovery here. 170512 16:05:50 mysqld_safe mysqld from pid file /Applications/MAMP/tmp/mysql/mysql.pid ended Any ideas?
I've just had the same problem with MAMP. To solve the problem, i was forced to delete the file that causes the error located in "Applications/MAMP/db/mysql56/bib" and then recreate the TABLE/BASE afterwards. I hope that would be helpful.
Duration of starting Mysqld is too long on Lustre file system (InnoDB: Unable to lock ./ibdata1, error: 38)
I can start mysqld and use it normally. But the duration of start is very long (over 3 minuts). When I check log file (/var/log/mysqld.log), I found InnoDB: Unable to lock ./ibdata1, error: 38. Recently, I moved my mysql data from /var/lib/mysql to /home/user/mysql because files are too large. Then I changed datadir in /etc/my.cnf and /etc/init.d/mysqld respectively and changed datasock in etc/my.cnf. Owner and mod of /home/user/mysql and files in it is correctly set as well. The /home volume in this installation is on the Lustre file system. When I found there are 3 innodb engine table in my database, I droped them. But the problem is still here. Here is the log when starting mysqld (/var/log/mysqld.log). 141027 19:40:03 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 141027 19:40:04 mysqld_safe Starting mysqld daemon with databases from /home/user/mysql InnoDB: Unable to lock ./ibdata1, error: 38 141027 19:40:04 InnoDB: Retrying to lock the first data file InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 InnoDB: Unable to lock ./ibdata1, error: 38 141027 19:41:45 InnoDB: Unable to open the first data file InnoDB: Error in opening ./ibdata1 141027 19:41:45 InnoDB: Operating system error number 38 in a file operation. InnoDB: Error number 38 means 'Function not implemented'. InnoDB: Some operating system error numbers are described at InnoDB: http://dev.mysql.com/doc/refman/5.1/en/operating-system-error-codes.html InnoDB: Could not open or create data files. InnoDB: If you tried to add new data files, and it failed here, InnoDB: you should now edit innodb_data_file_path in my.cnf back InnoDB: to what it was, and remove the new ibdata files InnoDB created InnoDB: in this failed attempt. InnoDB only wrote those files full of InnoDB: zeros, but did not yet use them in any way. But be careful: do not InnoDB: remove old data files which contain your precious data! 141027 19:41:45 [ERROR] Plugin 'InnoDB' init function returned error. 141027 19:41:45 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 141027 19:41:45 [Note] Event Scheduler: Loaded 0 events 141027 19:41:45 [Note] /usr/libexec/mysqld: ready for connections. Version: '5.1.52' socket: '/home/user/mysql/mysql.sock' port: 3306 Source distribution
You're using a Lustre file system for your /home volume. Unless you enable it specifically on a Lustre volume, that file system doesn't support file locking. But InnoDB needs to lock its files to function correctly. So when InnoDB issues the ioctl(2) calls to lock the file, the file system kicks back "Function not implemented." That's what your error log says. InnoDB: Error in opening ./ibdata1 141027 19:41:45 InnoDB: Operating system error number 38 in a file operation. InnoDB: Error number 38 means 'Function not implemented'. Here's a link to an old listserv on this point. http://lists.lustre.org/pipermail/lustre-discuss/2007-August/003768.html Somewhere in that thread somebody mentions how to enable file locking. You may want to work with the people administering your file systems to create a special-purpose Lustre volume for your MySQL database, a volume that has locking enabled. Is this a mission-critical MySQL server? If so, please do a lot of due-diligence before deploying it on this file system.
Checking for tables which need an upgrade, are corrupt or were not closed cleanly
I am running mysql on my EC2 and when I tried to do: sudo /etc/init.d/mysql restart I got this: Stopping MySQL database server mysqld Starting MySQL database server mysqld Checking for tables which need an upgrade, are corrupt or were not closed cleanly. Here is what is in my /var/log/mysql/error.log InnoDB: Check that you do not already have another mysqld process InnoDB: using the same InnoDB data or log files. InnoDB: Unable to lock ./ibdata1, error: 11 InnoDB: Check that you do not already have another mysqld process InnoDB: using the same InnoDB data or log files. InnoDB: Unable to lock ./ibdata1, error: 11 InnoDB: Check that you do not already have another mysqld process InnoDB: using the same InnoDB data or log files. 140406 1:47:27 InnoDB: Unable to open the first data file InnoDB: Error in opening ./ibdata1 140406 1:47:27 InnoDB: Operating system error number 11 in a file operation. InnoDB: Error number 11 means 'Resource temporarily unavailable'. InnoDB: Some operating system error numbers are described at InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html 140406 1:47:27 InnoDB: Could not open or create data files. 140406 1:47:27 InnoDB: If you tried to add new data files, and it failed here, 140406 1:47:27 InnoDB: you should now edit innodb_data_file_path in my.cnf back 140406 1:47:27 InnoDB: to what it was, and remove the new ibdata files InnoDB created 140406 1:47:27 InnoDB: in this failed attempt. InnoDB only wrote those files full of 140406 1:47:27 InnoDB: zeros, but did not yet use them in any way. But be careful: do not 140406 1:47:27 InnoDB: remove old data files which contain your precious data! 140406 1:47:27 [ERROR] Plugin 'InnoDB' init function returned error. 140406 1:47:27 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 140406 1:47:27 [ERROR] Unknown/unsupported storage engine: InnoDB 140406 1:47:27 [ERROR] Aborting 140406 1:47:27 [Note] /usr/sbin/mysqld: Shutdown complete 140406 01:47:27 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended Could someone please tell me what is going on? Thanks
Looks you have a mysql process running. There's a lock on your ./ibdata1 file. it could be that for some reason your service mysql stop command is not stopping the process as it may not be finding the PID of your mysql server. Run from the command line: ps -Af | grep mysql Get the PID of your mysql process and then simply: kill -9 <PID of your mysql process>
cd /var/lib/mysql #killall -9 mysqld #innochecksum -d ibdata1 nano /etc/mysql/my.cnf [mysqld] innodb_force_recovery = 4 /etc/init.d/mysql start
Starting MySQL. ERROR! Manager of pid-file quit without updating file
I have a Centos and discovered my MySQL wouldn't start after it suddenly failed. I have tried all possible research in google to no avail. Here is the log details root#27583 [~]# tail -200 /var/log/mysql.log 18:53:49 UTC - mysqld got signal 6 ; This could be because you hit a bug. It is also possible that this binary or one of the libraries it was linked against is corrupt, improperly built, or misconfigured. This error can also be caused by malfunctioning hardware. We will try our best to scrape up some info that will hopefully help diagnose the problem, but since we have already crashed, something is definitely wrong and this may fail. key_buffer_size=134217728 read_buffer_size=2097152 max_used_connections=0 max_threads=500 thread_count=0 connection_count=0 It is possible that mysqld could use up to key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 2184911 K bytes of memory Hope that's ok; if not, decrease some variables in the equation. Thread pointer: 0x0 Attempting backtrace. You can use the following information to find out where mysqld died. If you see no messages after this, something went terribly wrong... stack_bottom = 0 thread_stack 0x40000 /usr/sbin/mysqld(my_print_stacktrace+0x35)[0x7dad25] /usr/sbin/mysqld(handle_fatal_signal+0x3e1)[0x693c61] /lib64/libpthread.so.0[0x7ffa00611ca0] /lib64/libc.so.6(gsignal+0x35)[0x7ff9ff8112c5] /lib64/libc.so.6(abort+0x110)[0x7ff9ff812d70] /usr/sbin/mysqld[0x8deb95] /usr/sbin/mysqld[0x8b66c9] /usr/sbin/mysqld[0x8b6c07] /usr/sbin/mysqld[0x8a87e7] /usr/sbin/mysqld[0x87eae2] /usr/sbin/mysqld[0x874ef9] /usr/sbin/mysqld[0x875514] /usr/sbin/mysqld[0x876ab1] /usr/sbin/mysqld[0x8643ba] /usr/sbin/mysqld[0x82d2a9] /usr/sbin/mysqld(_Z24ha_initialize_handlertonP13st_plugin_int+0x46)[0x695c66] /usr/sbin/mysqld[0x587e7c] /usr/sbin/mysqld(_Z11plugin_initPiPPci+0xcf6)[0x58aac6] /usr/sbin/mysqld[0x5051e3] /usr/sbin/mysqld(_Z11mysqld_mainiPPc+0x8ad)[0x50829d] /lib64/libc.so.6(__libc_start_main+0xf4)[0x7ff9ff7fe9c4] /usr/sbin/mysqld[0x4ff119] The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains information that should help you find out what is causing the crash. 130209 19:53:49 mysqld_safe mysqld from pid file /var/lib/mysql/deepserver.netaviva.net.pid ended 130209 19:58:50 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 130209 19:58:50 [Warning] The syntax '--log-slow-queries' is deprecated and will be removed in a future release. Please use '--slow-query-log'/'--slow-query-log-file' instead. 130209 19:58:50 [Note] Plugin 'FEDERATED' is disabled. 130209 19:58:50 InnoDB: The InnoDB memory heap is disabled 130209 19:58:50 InnoDB: Mutexes and rw_locks use GCC atomic builtins 130209 19:58:50 InnoDB: Compressed tables use zlib 1.2.3 130209 19:58:50 InnoDB: Using Linux native AIO 130209 19:58:50 InnoDB: Initializing buffer pool, size = 128.0M 130209 19:58:50 InnoDB: Completed initialization of buffer pool 130209 19:58:50 InnoDB: highest supported file format is Barracuda. InnoDB: The log sequence number in ibdata files does not match InnoDB: the log sequence number in the ib_logfiles! 130209 19:58:50 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... 130209 19:58:50 InnoDB: Error: page 7 log sequence number 7922893671086 InnoDB: is in the future! Current system log sequence number 6086292560908. InnoDB: Your database may be corrupt or you may have copied the InnoDB InnoDB: tablespace but not the InnoDB log files. See InnoDB: http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html InnoDB: Your database may be corrupt or you may have copied the InnoDB InnoDB: tablespace but not the InnoDB log files. See InnoDB: http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html InnoDB: for more information. InnoDB: Error: trying to access page number 939544476 in space 0, InnoDB: space name ./ibdata1, InnoDB: which is outside the tablespace bounds. InnoDB: Byte offset 0, len 16384, i/o type 10. InnoDB: If you get this error at mysqld startup, please check that InnoDB: your my.cnf matches the ibdata files that you have in the InnoDB: MySQL server. 130209 19:58:50 InnoDB: Assertion failure in thread 139796076951264 in file fil0fil.c line 4436 InnoDB: We intentionally generate a memory trap. InnoDB: Submit a detailed bug report to http://bugs.mysql.com. InnoDB: If you get repeated assertion failures or crashes, even InnoDB: immediately after the mysqld startup, there may be InnoDB: corruption in the InnoDB tablespace. Please refer to InnoDB: http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html InnoDB: about forcing recovery. Please i would greatly appreciate any help to get this working again.
InnoDB: Unable to lock error 45 when starting mamp
i am in the process of moving the db for mamp to my remove drive and it is almost working i think but whenever i start mamp mysql won't start and if i check the error log i come across this: 110406 23:00:12 mysqld_safe Starting mysqld daemon with databases from /Volumes/WALL-E/db/mysql 110406 23:00:12 [Warning] One can only use the --user switch if running as root 110406 23:00:12 [Note] Plugin 'FEDERATED' is disabled. 110406 23:00:12 InnoDB: The InnoDB memory heap is disabled 110406 23:00:12 InnoDB: Mutexes and rw_locks use InnoDB's own implementation 110406 23:00:12 InnoDB: Compressed tables use zlib 1.2.3 110406 23:00:12 InnoDB: Initializing buffer pool, size = 128.0M 110406 23:00:12 InnoDB: Completed initialization of buffer pool InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 110406 23:00:13 InnoDB: Retrying to lock the first data file InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 InnoDB: Unable to lock /Volumes/WALL-E/db/mysql/ibdata1, error: 45 i also found this question but couldn't seem to find a way to make that work for MAMP, what am i doing wrong, is it a permissions problem ? PS - Yep, my drive is called WALL-E :)
Probably an issue with filesystem level file locking. Try starting Mysql with --skip-locking. Im not sure how to do that with MAMP as I'ver never used it. Look for a place in its preferences where you can supply a custom options for startup. Alternatively you might be bale to customize the mounting of removable media to enable locks with autofs, but my autofs-fu is weak so i cant give any pointers there.