Я пытаюсь выполнить сценарий оболочки для входа в mysql как root и выполнить некоторые команды, а во избежание ввода пароля root в командной строке я использую формат heredoc как показано ниже. Однако mysql подсказывает мне пароль, несмотря на то, что я даю ему правильный пароль.MySQL запрашивает пароль при использовании heredoc
Точно такой же синтаксис работает на некоторых других хостах, но не здесь.
Почему?
[email protected]:MySQL> mysql -uroot -p -s -P3306 -e 'SELECT NOW();' <<EOF
> MyPassword
> EOF
Enter password: <---- why does it require manual password entry in here?
2014-12-23 14:57:25
MySQL всегда отображает приглашение перед чтением пароля. Не имеет значения, поступает ли вход от терминала или здесь-документа. – Barmar
@ Бармар Да, это правильно. Я думаю, что мне нужно прояснить проблему следующим образом: в других хостах mysql запрашивает «Enter password:», но это не останавливается; он просто принимает уже заданный пароль. Однако в этом случае он останавливается и ждет ввода пароля вручную. – RGO
Вы правы, я вижу это в своей системе Linux. Он должен читать пароль от '/ dev/tty', а не' stdin'. – Barmar