您好,登錄后才能下訂單哦!
本文主要給大家介紹MySQL如何實現數據備份與還原的簡單方法,文章內容都是筆者用心摘選和編輯的,具有一定的針對性,對大家的參考意義還是比較大的,下面跟筆者一起了解下MySQL如何實現數據備份與還原的簡單方法吧。
基礎概念:
備份,將當前已有的數據或記錄另存一份;
還原,將數據恢復到備份時的狀態。
為什么要進行數據的備份與還原?
防止數據丟失;
保護數據記錄。
數據備份與還原的方式有很多種,具體可以分為:數據表備份、單表數據備份、SQL備份和增量備份。
數據表備份
數據表備份,不需要通過 SQL 來備份,我們可以直接進入到數據庫文件夾復制對應的表結構以及數據;在需要還原數據的時候,直接將備份(復制)的內容放回去即可。
不過想要進行數據表備份是有前提條件的,因為不同的存儲引擎之間是有區別的。
對于存儲引擎,MySQL 主要使用兩種,分別為:InnoDB 和 Myisam,兩者均免費。在這里,咱們可以順便科普一下存儲引擎的知識:
其中,Myisam 和 InnoDB 的數據存儲方法也有所區別:
Myisam:表、數據和索引全部單獨分開存儲;
InnoDB:只有表結構,數據全部存儲到ibd文件中。
執行如下 SQL 語句,測試 Myisam 的數據存儲方式:
-- 創建 Myisam 表 create table my_myisam( id int )charset utf8 engine = myisam; -- 顯示表結構 show create table my_myisam; -- 插入數據 insert into my_myisam values(1),(2),(3); -- 顯示數據 select * from my_myisam;
如上圖所示,我們創建了名為my_myisam,存儲引擎為 Myisam 的數據表。為了驗證 Myisam 的存儲特性,我們可以到data文件夾查看具體的數據存儲情況:
如上圖所示,我們僅僅創建了一個表my_myisam,但是 Myisam 對于會生成三個存儲文件,分別為:
my_myisam.frm:存儲表的結構;
my_myisam.MYD:存儲表的數據;
my_myisam.MYI:存儲表的索引。
現在,我們將這三個文件復制到testoo數據庫(至于如何找到 MySQL 數據文件的存儲位置,可以參考詳述查看 MySQL 數據文件存儲位置的方法):
執行如下 SQL 語句,進行測試:
-- 切換數據庫 use testoo; -- 查看 testoo 數據庫中的表 show tables; -- 查看表 my_myisam select * from my_myisam;
如上圖所示,顯然我們已經通過復制文件的方式,完成了數據表的備份工作。
在這里,有一點需要我們注意,那就是:我們可以將通過 InnoDB 存儲引擎產生的.frm和.idb文件復制到另一個數據庫,也可以通過show tables命令查看復制過來的表名稱,但是卻無法獲得數據。
執行如下 SQL 語句,進行測試:
-- 查看 testoo 數據庫中的表 show tables; -- 查看表 my_class select * from my_class;
通過以上測試,顯然數據表備份這種備份方式更適用于 Myisam 存儲引擎,而且備份的方式也很簡單,直接復制 Myisam 存儲引擎產生的.frm、.MYD和.MYI三個存儲文件到新的數據庫即可。
溫馨提示:符號[]括起來的內容,表示可選項;符號+,則表示連接的意思。
看完以上關于MySQL如何實現數據備份與還原的簡單方法,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業知識信息 ,可以持續關注我們的行業資訊欄目的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。