fedora16のservice mysqld startが動かなかった件
fedora16で、MySQLをインスコしてservice mysqld startで起動しようとしたら、動かなかったので色々調べてみました。 service mysqld startで起動してみると下記のようになります。
# service mysqld start Redirecting to /bin/systemctl start mysqld.service Job failed. See system logs and 'systemctl status' for details. # systemctl status mysqld.service mysqld.service - MySQL database server Loaded: loaded (/lib/systemd/system/mysqld.service; disabled) Active: failed since Fri, 18 May 2012 16:08:35 +0900; 1s ago Process: 3203 ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID (code=exited, status=1/FAILURE) Process: 3065 ExecStart=/usr/bin/mysqld_safe --nowatch --basedir=/usr (code=exited, status=0/SUCCESS) Process: 3049 ExecStartPre=/usr/libexec/mysqld-prepare-db-dir (code=exited, status=0/SUCCESS) Main PID: 3202 (code=exited, status=1/FAILURE) CGroup: name=systemd:/system/mysqld.service
で、mysql.logを見てみると、下記のように出ている。
120518 16:10:54 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 120518 16:10:54 [Note] Plugin 'FEDERATED' is disabled. 120518 16:10:54 InnoDB: The InnoDB memory heap is disabled 120518 16:10:54 InnoDB: Mutexes and rw_locks use GCC atomic builtins 120518 16:10:54 InnoDB: Compressed tables use zlib 1.2.5 120518 16:10:54 InnoDB: Using Linux native AIO /usr/libexec/mysqld: Can't create/write to file '/tmp/ibZB7EY0' (Errcode: 13) 120518 16:10:54 InnoDB: Error: unable to create temporary file; errno: 13 120518 16:10:54 [ERROR] Plugin 'InnoDB' init function returned error. 120518 16:10:54 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 120518 16:10:54 [ERROR] Unknown/unsupported storage engine: InnoDB 120518 16:10:54 [ERROR] Aborting
InnoDBでtmpファイルが作れないので、起動できていませんでした。 で、調べてみると原因はこれ。 * [PrivateTmp does not work.](https://bugzilla.redhat.com/show_bug.cgi?id=752540) fedoraはsystemdでサービスを管理するのが主流になっているのですが、systemdのバグをふんだためMySQLが起動できませんでした。 systemdをupgradeすれば解決します。
# yum update systemd # service mysqld start Redirecting to /bin/systemctl start mysqld.service
ふう、一日使っちまった。。。。。 ## 参考 * [Fedora 16 strange /tmp permissions: mysqld will not start](http://unix.stackexchange.com/questions/37187/fedora-16-strange-tmp-permissions-mysqld-will-not-start)














