Во время настройки резервного копирования на новом сервере столкнулся с ошибкой, которая и является темой сообщения.
FreeBSD 11.1, MySQL 5.7, валидный пользователь, конструкция
mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect.
Запускаю от имени рута чтоб не возникало вопросов с правами.
Конструкция
Изучение манов никакого эфекта не дает, там ничего не менялось в этом ключе.
Решение нахожу совершенно случайно и по наитию попробовав заключить пароль в одинарные кавычки:
Проверяю
Одним словом похоже это новая баго-фича в сборке MySQL5.7 for FreeBSD.
PS. И да, напоминаю, что правильный путь, это проковырять исходники и пересобрать мускул!
PS2. По зрелому размышлению, пришел к выводу, что возможно это никакой не баг:
начиная с версии MySQL 5.7 политика паролей по умолчанию требует пароля с минимум 8 символов, из них минимум 1 буква верхнего регистра, 1 цифра и 1 спецсимвол, именно наличие спецсимвола и требует экранирования пароля кавычками. Я не стал переопределять политику паролей, а перегенерировал с подгонкой под требования, поэтому столкнулся с данной проблемой, но судя по поиску в гугле я не одинок, потому надеюсь, что кому то будет полезно.
FreeBSD 11.1, MySQL 5.7, валидный пользователь, конструкция
mysqldump -uroot -p моя_база > backup.sql
работает, как проложено,mysqldump -uroot -pмой_пароль моя_база > backup.sql
говорит:mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect.
Запускаю от имени рута чтоб не возникало вопросов с правами.
Конструкция
mysqldump -uroot --password=мой_пароль моя_база > backup.sql
ведет себя абсолютно аналогичным способом.Изучение манов никакого эфекта не дает, там ничего не менялось в этом ключе.
Решение нахожу совершенно случайно и по наитию попробовав заключить пароль в одинарные кавычки:
mysqldump -uroot --password='мой_пароль' моя_база > backup.sql
сработало!Проверяю
mysqldump -uroot -p'мой_пароль' моя_база > backup.sql
тоже работает!Одним словом похоже это новая баго-фича в сборке MySQL5.7 for FreeBSD.
PS. И да, напоминаю, что правильный путь, это проковырять исходники и пересобрать мускул!
PS2. По зрелому размышлению, пришел к выводу, что возможно это никакой не баг:
начиная с версии MySQL 5.7 политика паролей по умолчанию требует пароля с минимум 8 символов, из них минимум 1 буква верхнего регистра, 1 цифра и 1 спецсимвол, именно наличие спецсимвола и требует экранирования пароля кавычками. Я не стал переопределять политику паролей, а перегенерировал с подгонкой под требования, поэтому столкнулся с данной проблемой, но судя по поиску в гугле я не одинок, потому надеюсь, что кому то будет полезно.
Это - бережно хранимая на протяжении многих лет багофича. Спасибо за подсказку, оан выручила меня при бэкапепоследней вресии MySQL из докер-контейнера
ОтветитьУдалить