2011-12-12 36 views

回答

0

我想唯一的辦法就是用實際的SQL數據的工作,而不是與在那裏它們被存儲的文件。所以:

  • 把「新」目錄中的文件在另一臺服務器,重啓MySQL,讓你需要
  • 導入SQL轉儲到你的「主」服務器數據庫的SQL轉儲。根據哪些數據存在/不存在,您可以直接導入它,或者您需要將它們導入其他數據庫,然後將它們重命名爲實際名稱。
1

1)備份的原始文件(出於安全原因)

2)用mysql數據文件夾中的新文件(frm,MYI和MYD)替換舊文件。在將它們移動到數據文件夾之前,應將它們複製到同一個hdd/mount /分區上的臨時文件夾中,以便快速完成複製過程。

3)在數據庫上執行'flush tables'。

現在你應該有新的數據運行。

+0

你確定我可以用mysql服務器運行嗎?如果服務器在複製文件時開始寫入光盤,該怎麼辦? – georg

+0

您應該先將文件複製到同一分區上的臨時文件夾中,以便移動只需幾ms。這不是100%安全!移動過程中此表上的操作可能會失敗。這對於讀操作並不是很差,因爲寫操作可能很微妙。但是我不知道任何其他的選擇,而不停止服務器。如果你有一張每秒有大量寫入操作的表格,你不應該那樣做。我經常使用這種方法,它運行良好,但在我的設置中,主要有讀取操作和幾次寫入(每小時不到100次)。 – Don