我的資料庫很簡單,一個叫MyDB的資料庫,其下有student與score兩個資料表。
- 代碼: 選擇全部
cp -r /debian/var/lib/mysql/MyDB /var/lib/mysql/
這個時候重新啟動mysql,可以正常啟動,也有MyDB這個資料庫名稱,但是我要去select * from student時,會顯示:
- 代碼: 選擇全部
ERROR 1146 (42S02): Table 'MyDB.student' doesn't exist
這時我懷疑到可能是debian跟ubuntu對於mysql的群組名稱不同,於是我改用cp -a
- 代碼: 選擇全部
cp -a /debian/var/lib/mysql/MyDB /var/lib/mysql/
但是這次我就沒辦法重新啟動mysql了。
最後,我想可能是因為uid與gid的關係。在debian裡,MyDB這個資料庫的user:group均為mysql,uid:gid為110:115。
ubuntu裡的mysql的uid:gid為114:126,我認為這就是問題所在,於是我修改ubuntu下的mysql為110:115,並且在ubuntu下重新啟動mysql。但是ubuntu裡已經被另一個服務用掉了uid 110...結果還是無法修改uid來啟動mysql。
請問,應該如何才能夠成功的把資料庫轉移過來呢?
如果把資料庫從一個系統轉到另一個系統,應該注意哪些事情呢?
謝謝前輩的指教!