2012-08-27 67 views
0

我嘗試使用下面的命令來恢復/導入mysqldump的文件時,mysqldump的數據寫入到終端(在Windows上,5.xx版):爲什麼導入/恢復文件

mysqldump -u root -p --all-databases < myfile.sql 

然而,在處理過程中,命令提示符窗口開始發出瘋狂的響聲。是否有可能刪除mysqldump命令的輸出(我假設是什麼導致這種聲音發生)?有問題的文件略多於200MB。

我看了看標誌和唯一的似乎是--verbose會幫助我。但是,它似乎無法在命令提示符窗口中停止輸出(但會添加更多輸出?)。

編輯#1

一個答案,已被刪除,建議管道輸出的/ dev/null的。我在Windows上,我不知道什麼是等效的。如果我將它管到一個實際的文件,我實際上幾乎將我的轉儲複製到另一個文件? 爲什麼恢復首先輸出到提示符?

+2

將音量調低...? –

+0

@MattBall我不能因爲它是熄滅的情況下揚聲器......現在測試的答案之一... – TekiusFanatikus

+0

「開始嗶嗶想瘋了」,聽起來像[* BEL /貝爾*字符(ASCII 7)]( http://en.wikipedia.org/wiki/Bell_character)正在寫入終端。當發生這種情況時,許多終端會發出「嘟嘟」聲(例如,'cat/dev/urandom'應該導致與* garbage *寫入終端相似的行爲)。因此要問的問題是*爲什麼*是寫入終端的數據 - 哪裏應該去? – 2012-08-27 19:29:56

回答

4

我覺得你真的打算運行

mysqldump -u root -p --all-databases > myfile.sql 

(您重定向是圍繞着錯誤的方式)

mysqldump的寫入到文件中。要從該文件導入,您可以使用

mysql -u root -p < myfile.sql 
+0

您的指示正確無誤。但是,由於我打算恢復/導入一個文件,我的方向似乎是正確的(即小於)。 – TekiusFanatikus

+2

@TekiusFanatikus:您不使用* mysqldump *來恢復/導入。您使用* mysql *執行還原/導入,使用最初由* mysqldump *導出的文件。 –

+0

啊......沒有注意到使用mysql而不是mysqldump。這確實有效!謝謝!我也很抱歉沒有仔細閱讀。 – TekiusFanatikus