Если возникают проблемы с тем, что кто угодно может удалить коммуникационный сокет MySQL `/tmp/mysql.sock', то в большинстве версий Unix можно защитить содержимое `/tmp', установив на каталоге ``липучий'' (sticky) бит. Войдите в систему как пользователь root и выполните следующую команду:
shell> chmod +t /tmp
Это защитит ваш каталог `/tmp': теперь удалять в нем файлы смогут только их владельцы или суперпользователь (root).
Проверить, установлен ли ``липучий'' (sticky) бит, можно, выполнив ls -ld /tmp. Если последним битом прав является t, то бит установлен.
Изменить путь к каталогу, где MySQL открывает сокет-файл, можно, воспользовавшись одним из следующих способов:
Укажите путь в глобальном или локальном файле опций. Например, поместите в `/etc/my.cnf':
[client] socket=path-for-socket-file
[mysqld] socket=path-for-socket-file
See section 4.1.2 Файлы параметров `my.cnf'.
Укажите, где расположен файл, в командной строке safe_mysqld и большинства клиентов с помощью опции --socket=путь-к-файлу-сокета.
Укажите путь к сокету в переменной окружения MYSQL_UNIX_PORT.
Определите путь с помощью опции конфигурирования --with-unix-socket-path=путь-к-файлу-сокета (see section 2.3.3 Типичные опции configure).
Проверить, работает ли сокет, можно следующей командой:
shell> mysqladmin --socket=/path/to/socket version