Использование скобок в пароле MySQL

2

Я пытаюсь использовать mysqldump для создания моментального снимка моей базы данных, однако пароль root имеет скобки и вызывает у меня проблемы. Насколько я знал, я мог бы окружить пароль [], чтобы он работал, но у меня все еще есть проблема.

Какой правильный способ отформатировать это?

mysqldump -u root -p[(pwdwithbrackets)] databasename > file.sql
-bash: syntax error near unexpected token '('
Теги:

3 ответа

2
Лучший ответ

Просто заверните его в кавычки.

Еще лучше, не передавайте аргумент -p и просто введите его при появлении запроса. Предоставление пароля каким-либо образом нежелательно.

4

Используйте методы предотвращения утечки:

-p\(pwdwithbrackets\)

... или:

'-p(pwdwithbrackets)'

(Непроверенный, здесь не было Linux-бокса).

0

Лучше не оставлять пароли в текстовом виде в командной строке.

Вместо этого вы можете поместить их в файл конфигурации MySQL пользователя:

$ cat > ~/.my.cnf
[client]
user = root
password = [(pwdwithbrackets)]
^D

$ mysqldump databasename > file.sql

Я протестировал и подтвердил, что это работает, когда пароль включает квадратные скобки и круглые скобки.

Вы также можете поместить опции в любой другой файл и использовать его таким образом:

$ mysqldump --defaults-file=myconf.cfg database > file.sql

Ещё вопросы

Сообщество Overcoder
Наверх
Меню