Что делает mysqldump <?Ошибка базы данных живого сайта, почти обосрались - PullRequest
3 голосов
/ 17 февраля 2011

Мне пришлось удалить некоторые записи из таблицы, поэтому перед этим я сделал резервную копию этой таблицы с помощью команды mysqldump. После удаления я понял, что произошла ошибка, поэтому я подумал про себя ... НЕТ ПРОБЛЕМЫ .... У меня есть резервная копия, поэтому я восстановлю ее. Я думал, что при экспорте вы используете DATABASE> FILE.SQL, поэтому импорт будет означать DATABASE

Итак, я выполнил следующую команду:

mysqldump -u USER -p DATABASE < FILE.SQL

А потом я понял, что допустил ошибку, потому что он начал отображать все записи на экране. Как будто он работает в подробном режиме. Я сидел там совершенно неподвижно и застыл, размышляя о том, что, черт возьми, происходит !!!! потому что он даже отображал те таблицы, которые я не экспортировал ранее. Я не знал, остановить ли это или позволить этому завершить процесс. Я подождал около 2, 3 минут, а затем нажал Ctrl + C, чтобы остановить его, и помолился Богу, что все в порядке. Затем я проверил свою базу данных в phpMyAdmin и, по-видимому, все в порядке, все таблицы присутствуют и данные тоже.

Так что мой вопрос ..... ЧТО ЭТО ДЕЛАЛО, КОГДА Я ПОЛУЧИЛ ЭТО? Это была живая база данных, и я почти не доверяю своим штанам!

Спасибо

Ответы [ 3 ]

5 голосов
/ 17 февраля 2011

Mysqldump не берет никаких <, поэтому он просто повторно выгрузит вашу базу данных в ваш терминал,
и именно поэтому ваш экран заполняется данными (короче говоря, никаких проблем)

3 голосов
/ 17 февраля 2011

Вы используете mysqldump для резервного копирования базы данных и mysql для ее восстановления:

mysql -u USER -p DATABASE < FILE.SQL
2 голосов
/ 17 февраля 2011

Я не думаю, что это что-то сделало. mysqldump - инструмент только для записи, и, насколько мне известно, никогда не принимает ввод из командной строки. Вы накормили его мусором, которого он не понял, не причинив вреда.

...