在我的個人知識管理中,經常用到mysql資料庫,wordpress搭建的worklog、搜尋測試資料、我blog的測試環境等。我在自己的電腦上整了WAMP(Windows Apache MySQL PHP),哈哈,不是LAMP,用linux做案頭和周圍的同事溝通還是不順暢。
十一前換了台新的筆記本,原來的mysql被我dump成一個sql檔案,50多M。結果在新系統裡面匯入的時候出現問題,在命令列執行source的時候報錯:
ERROR 1044 (42000): Access denied for user ‘root’@'localhost’ to database ‘information_schema’
以前從來沒遇到過,root帳號沒有許可權?用用戶端、phpmyadmin啥的執行操作都沒問題,命令列也能執行諸如建立、刪除資料庫和表的操作,怪!搜尋了幾把,沒找到問題所在,問了幾個周圍的朋友,也沒有解決這個問題。於是作罷,打算用拷貝檔案的方式了。剛才又折騰了一下,結果發現原來dump的sql檔案裡有建立和匯入information_schema和mysql兩個資料庫的內容,乖乖!原來我dump的時候把所有資料庫所有表的整出來了。顯然這兩個資料庫是不能被匯入的,手動用editplus開啟sql檔案,刪除那堆東西以後,匯入成功。
記得在mysql4的時代這麼幹好像是可以的。有時間得多熟悉熟悉了,兩眼一摸黑的蠻幹不行了。
mysql -u root -p
輸入密碼
source sql檔案名稱
**************************************************************
或者在匯出資料庫的sql檔案時,先選中進入該資料庫,然後再選擇【匯出】,這樣就不會包含information_schema和mysql兩個資料庫的內容了,這樣做的話,在重新匯入sql檔案時,要先建立該資料庫,然後進入此資料庫,再選擇匯入sql檔案。