Когда я пытаюсь сделать резервную копию моей БД с помощью командной строки

mysqldump -u root -p db_name > path to store

Это подсказывает

Введите пароль:

И в течение нескольких секунд, прежде чем я введу свой пароль, он перенаправляется обратно в CMD. Также в указанном месте создается файл, который не содержит ничего.

Но когда я пытаюсь дать пароль в самой команде, она генерирует правильный файл дампа. Некоторые, пожалуйста, расскажите, в чем причина.

2 ответа2

1

Я предполагаю, что ваш дамп создает дамп "обучающей" базы данных, которая не существует. Вам необходимо отформатировать вашу команду для ссылки на базу данных "Обучение клиентов".

Вам нужно добавить кавычки вокруг имени вашей базы данных.

Обычная вещь для именования вещей с пробелами (пробелами) в базах данных состоит в том, чтобы никогда не включать пробел и исключать пробел с именем типа "trainingcustomers" или заменять пробел подчеркиванием (training_customers). Дефисы менее распространены, чтобы заполнить пробел, но третичный выбор.

0

Я могу думать только о некоторой предварительной конфигурации, которая принимается mysqldump (например, по умолчанию user и pass), что неправильно, потому что mysqldump завершает работу без объяснения причины. Попытайтесь просмотреть файлы конфигурации mysql для этого, также проверьте журнал mysql для любых сообщений. Может быть, у вас установлена системная переменная, например PASSWORD, которая затем выбирается mysqldump, когда пароль после -p не задан.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .