Какая разница между указанием / не указанием пользователя, когда mysqldump? - PullRequest
0 голосов
/ 01 февраля 2019

В чем разница между

mysqldump database > dump.sql 
mysqldump -u user -p database > dump_with_user.sql 

?

Они оба экспортировали sql, так каков интерес, чтобы указать пользователя и пароль?Будет ли разница при импорте?

1 Ответ

0 голосов
/ 01 февраля 2019

Я предполагаю, что вы подключены как пользователь root и ваш сервер ненадежно настроен (то есть пароль для пользователя root не задан).

Неявный пользователь, используемый утилитой mysqldump, будет пользователем, используемым базовой оболочкой (я думаю, root), поскольку пароль не был задан, и вы можете сбросить базу данных, не предоставив нипользователь, ни пароль, я заключаю, что к учетной записи mysql не привязан пароль.

Аргументы пользователя и пароля для mysqldump - это аргументы mysql: у пользователя должны быть привилегии, связанные, по крайней мере, для просмотра схемы и выбора данных.Начиная с справочное руководство :

mysqldump требует как минимум привилегию SELECT для дамп-таблиц, SHOW VIEW для дамп-представлений, TRIGGER для дамп-триггеров и LOCK TABLES, если --singleОпция -transaction не используется.Для некоторых опций могут потребоваться другие привилегии, как указано в описании опций.

Таким образом, даже в вашей ситуации вам не нужно указывать ни пользователя, ни пароль, при использовании реальных (!) Баз данных вы будетедолжны указать их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...