2012-01-18 46 views
28

當我安裝的MySQL它來有兩個數據庫,mysql和信息架構。我不小心刪除了mysql數據庫。有什麼方法可以重新創建它嗎?如何恢復/重建MySQL的默認的「MySQL的數據庫

而且,因爲它包含一個包含用戶信息的表,會不會有什麼方法可以查看用戶的信息不呢?

+1

我想你只要把自己需要MySQL服務器的重新安裝。 – Mchl 2012-01-18 13:48:46

回答

28

如果你仍然能夠登錄(我假設你是不是因爲沒有用戶表),並具有數據庫保存,用

mysqldump --routines databasename > outfile.sql 

MySQL數據庫轉儲他們可以用命令來重新創建

mysqld --initialize 

MySQL Documentation here

+0

我仍然能夠登錄。像魅力一樣工作,謝謝你先生。 – user784637 2012-01-18 13:51:18

+0

還好我是不正確的 – Mchl 2012-01-18 13:53:49

+0

@LedZeppelin這是偉大的,和令人驚訝的。我確定你會死在水裏! – 2012-01-18 13:56:43

1

我有一個類似的問題:我們刪除了mysql和INFORMATION_SCHEMA數據庫備份和恢復操作過程中。恢復我們自己的數據庫後,我們無法創建用戶(或者做任何事情),因爲這些系統表未被恢復。 (當然,我們絕不會在公司的生產環境中這樣做)。

如果你仍然有舊mysql_install_db的複印件(如我們所做的),不要使用它。由於MySQL 5.6.8它是一個perl腳本。採取類似的選項mysqld_safe。爲我們工作得很好 - 在恢復的數據庫上運行InnoDB恢復,安裝系統數據庫,讓我們的從服務器恢復運行。

2

我意外地刪除了數據庫mysql,並且mysqld --initialize沒有幫助我。 沒有錯誤顯示,甚至MySQL服務開始確定,但文件夾MySQL沒有創建和MySQL不可用 - 我甚至無法創建新的數據庫。

在努力,我注意到不同的選擇,我棄用選項innodb_additional_mem_pool_size = 20M,其中mysqld崩潰--initialize

固定mysql的配置後,花了很多時間後 - 它運作良好。