Как я могу изменить настройку "использование пароля" для logrotate на yes?
Я недавно настроил БД с помощью MariaDB и теперь ежедневно получаю сообщения об ошибках от logrotate (см. Ниже). Я использую пароль для пользователя root DB. Согласно тому, что я нашел в Интернете, я установил файл my.cnf, но он ничего не изменил. Сообщение об ошибке гласит (используя пароль: НЕТ). Некоторые из постов, которые я видел в Интернете, вместо этого говорят "да". Однако я не могу найти какую-либо документацию в Интернете или в файлах настроек MariaDB, где я могу указать logrotate, что он должен использовать пароль.
Сообщение об ошибке:
/etc/cron.daily/logrotate: mysqladmin: connect to server at 'localhost'
failed error: 'Access denied for user 'root'@'localhost' (using password: NO)'
error: error running shared postrotate script for '/var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log /var/log/mysql/mariadb-slow.log /var/log/mysql/error.log '
run-parts: /etc/cron.daily/logrotate exited with return code 1
/root/.my.cnf
[mysqladmin]
password = "password"
user = root
[mysql]
password = "password"
user = root
Я использую MariaDB 10.1.37 на Debian Stretch
1 ответ
Я предлагаю вам предоставить отдельного пользователя для mysqladmin и дать ему минимальные привилегии. Это может сократить уязвимость для хакеров.
mysqladmin
как mysql
он использует аргументы, чтобы решить, какой пользователь, какой хост и нужно ли запрашивать пароль:
-p
- динамически запрашивать пароль (сложно использовать в пакетном скрипте)-pMyPwd
- предоставить пароль (не очень безопасный)- (ни один из вышеперечисленных) - без пароля или...
Ты можешь использовать mysql_config_editor
установить пароль особым образом, так что вам не нужно включать -p
,