На мой взгляд, это происходит только из-за сборки рэкспейса (Freebsd 9.1)
root@office:/root # uname -a
FreeBSD office 9.1-RELEASE-p4 FreeBSD 9.1-RELEASE-p4 #1: Fri Jun 21 04:11:23 UTC 2013 root@freebsd:/usr/obj/usr/src/sys/XENHVM amd64
На недавно построенной машине, после обновления портов и компиляции mysql-сервера из портов я пытаюсь запустить mysqld, и вот что происходит:
root@office:/root # cd /usr/
root@office:/root # /usr/local/etc/rc.d/mysql-server start
Starting mysql.
root@office:/root # /usr/local/etc/rc.d/mysql-server status
mysql is not running.
root@office:/root # ps ax | grep mysql
4886 0 S+ 0:00.00 grep mysql
root@office:/root # tail /var/db/mysql/office.err
/usr/local/libexec/mysqld: Can't create/write to file '/tmp/ib1NS09t' (Errcode: 13)
130705 11:35:44 InnoDB: Error: unable to create temporary file; errno: 13
130705 11:35:44 [ERROR] Plugin 'InnoDB' init function returned error.
130705 11:35:44 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
130705 11:35:44 [ERROR] Unknown/unsupported storage engine: InnoDB
130705 11:35:44 [ERROR] Aborting
130705 11:35:44 [Note] /usr/local/libexec/mysqld: Shutdown complete
130705 11:35:44 mysqld_safe mysqld from pid file /var/db/mysql/office.pid ended
делаю это дома, все работает нормально. Я думаю, это вызвано какой-то схемой разбиения на части.
вот некоторая информация о перманентах и перегородках:
root@office:/root # df -h
Filesystem Size Used Avail Capacity Mounted on
zroot 15G 958M 15G 6% /
devfs 1.0k 1.0k 0B 100% /dev
zroot/tmp 15G 192k 15G 0% /tmp
zroot/usr 16G 1.3G 15G 8% /usr
zroot/usr/ports 16G 1.5G 15G 9% /usr/ports
zroot/usr/ports/distfiles 15G 145M 15G 1% /usr/ports/distfiles
zroot/usr/ports/packages 15G 144k 15G 0% /usr/ports/packages
zroot/usr/src 15G 509M 15G 3% /usr/src
zroot/var 15G 1.1M 15G 0% /var
zroot/var/crash 15G 148k 15G 0% /var/crash
zroot/var/db 15G 306M 15G 2% /var/db
zroot/var/db/pkg 15G 2.2M 15G 0% /var/db/pkg
zroot/var/empty 15G 144k 15G 0% /var/empty
zroot/var/log 15G 256k 15G 0% /var/log
zroot/var/mail 15G 148k 15G 0% /var/mail
zroot/var/run 15G 244k 15G 0% /var/run
zroot/var/tmp 15G 152k 15G 0% /var/tmp
root@office:/root # ls -lah /tmp
total 60
drwxr-xr-x 7 root wheel 7B Jul 5 03:05 .
drwxr-xr-x 18 root wheel 24B Jun 20 20:33 ..
drwxrwxrwt 2 root wheel 2B Jul 4 12:39 .ICE-unix
drwxrwxrwt 2 root wheel 2B Jul 4 12:39 .X11-unix
drwxrwxrwt 2 root wheel 2B Jul 4 12:39 .XIM-unix
drwxrwxrwt 2 root wheel 2B Jul 4 12:39 .font-unix
drwx------ 2 root wheel 3B Jul 4 13:07 tmux-0
Вопрос: как найти проблему и исправить?
Желательно без настройки tmpdir
параметр в my.cnf
, Я хочу исправить это должным образом, чтобы я мог сообщить Rckspace, что они сделали ошибку в своей сборке.
root@office:/root # ls -lah /tmp
total 60
drwxr-xr-x 7 root wheel 7B Jul 5 03:05 .
drwxr-xr-x 18 root wheel 24B Jun 20 20:33 ..
с такими разрешениями только root имеет право записи в / tmp. Вы можете попробовать изменить это
# chmod 777 /tmp
Я тоже задушил этим и решил, изменив расположение по умолчанию из файла my.cnf
[client]
port = 3306
# socket = /tmp/mysql.sock
socket = /var/db/mysql/mysql.sock
[mysqld]
...
# socket = /tmp/mysql.sock
socket = /var/db/mysql/mysql.sock
...