Я хочу иметь доступ к файлам журналов с FTP.
Домашний каталог FTP: / home / site /
Я сделал это в /etc/my.cnf:
long_query_time=2
log-slow-queries=/home/site/public_html/mysql-logs/mysql-log-slow-queries.log
log-queries-not-using-indexes
log_error=/home/site/public_html/mysql-logs/mysql-error.log
Права доступа к папке с журналами MySQL: 0760 Разрешения на файлы журналов: 0660
но если не повезет, MySQL не будет обновлять новые файлы.
Что я делаю не так?
CENTOS 6.9 MYSQL 5.1
Я сначала подумал, что у пользователя mysql нет доступа к домашнему каталогу «site». Если он не может получить к нему доступ, он также не может записать в файл. Даже если у него есть доступ для записи в каталог mysql-logs.
Почему бы вам просто не записать журналы в / var / log / mysql / и вместо этого создать символическую ссылку?
cd /home/site/public_html/mysql-logs/
ln -s /var/log/mysql/mysql-log-slow-queries.log
ln -s /var/log/mysql/mysql-error.log
Какой пользователь запускает mysqld?
Вероятно, что пользователь, который запускает mysqld, обычно mysql, не имеет права записи в / home / site / public_html / mysql-logs /
Следовательно, он не может записывать файлы журнала.
Попробуйте создать группу как для владельца / home / site / public_html, так и для mysql, затем каталоги chmod 0775 и каталоги chown
Это может быть связано с тем, что SELINUX блокирует mysql от записи в /home/site/public_html/mysql-logs/
дорожка.
Попробуйте ввести следующую команду: setenforce 0
и перезапустить mysql. Если теперь можно писать журналы, значит, вы нашли виновника. Однако вам следует не оставьте SELINUX отключенным, так как это очень ценный актив безопасности.
Скорее используйте semanage fcontext
маркировать /home/site/public_html/mysql-logs/
с правильным типом, снова включите SELINUX, запустив setenforce 1
и перезапустите mysql.