ubuntu14.04下通过.frm, .MYD,.MYI文件恢复建立mysql数据库
.frm .MYD .MYI都是Mysql存儲數據的文件, 代表MySQL數據庫表的結構/數據和索引文件。其中,*.frm是描述了表的結構,*.MYD保存了表的數據記錄,*.MYI則是表的索引。
恢復建立mysql數據庫時,先用 sudo su 切換到root角色。
第一,要找到初始安裝mysql時,數據庫存放的位置。通過指令 cd /etc/mysql 切換到mysql目錄下,然后用 vim my.cnf? 打開my.cnf文件,查找datadir,例如datadir? = /var/lib/mysql,則數據庫文件就保存在 /var/lib/mysql 目錄下。
第二,通過 mkdir /var/lib/mysql/dbname 建立名為 dbname 數據庫,然后通過cp -r 源目錄/* /var/lib/mysql/dbname將.frm ? .MYD ?? .MYI(可能還有.opt文件)拷貝到dbname目錄下。打開phpmyadmin后,就會發現多了一個名為dbname的數據庫。這樣,數據庫就建立完成了。
但是,當你點擊數據庫中的表時,可能會出現 Can't find file: '/xxx.frm'(errno:13)。出現這個問題的原因不是'/xxx.frm'這個文件不見了,而是這些文件的權限(應該要是mysql)不知道為什么變成了root。
解決方法:cd到xxx.frm文件所在目錄下,執行一下命令:chown mysql.mysql * 將所有文件的權限都改過來就可以了!如cd /var/lib/mysql/dbname, 然后執行命令:chown mysql.mysql *
再次打開phpmyadmin,就會發現數據庫中的表已經可以查看并進行操作了。
總結
以上是生活随笔為你收集整理的ubuntu14.04下通过.frm, .MYD,.MYI文件恢复建立mysql数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一上来,就问原理,问上亿(MySQL)大
- 下一篇: CSU 1081集训队分组(搜索)