mysqldump進行數(shù)據(jù)備份詳解
前言:
用mysqlbinlog工具(mysql原生自帶的工具)介意快速解析大量的binlog日志文件,并使用二進制日志進行數(shù)據(jù)恢復的應用實踐,這篇博客我們講一下數(shù)據(jù)備份先關的命令,因為我們做后臺開發(fā)一般工作在shell下,而且部署在后臺服務器或者是云端的mysql,大部分做了一些限制,我們可能在本地無法直連到后臺服務的數(shù)據(jù)庫3306端口上,一般都會有防火墻之類的網絡的中間鍵,沒有條件用GUI(圖形界面工具)鼠標操作做數(shù)據(jù)備份之類的,只能通過命令,而且命令也是最快速的,所以這篇博客講一下常用的數(shù)據(jù)備份,我們一般通過mysqldump進行。
在linux shell下執(zhí)行以下命令,即可把mytest庫的user表的數(shù)據(jù)導出到.sql文件中(導出的不僅是數(shù)據(jù),SQL語句也導出了)
vim user.sql查看user.sql文件內容如下:
現(xiàn)在mytest庫里面,我們把表刪了,或者是我們向進行數(shù)據(jù)遷移,在另一個庫上重建這個表。我們有了這個sql腳本在root根目錄下放著,權限不夠,要在普通用戶下執(zhí)行,所以把user.sql移到普通用戶下(或者我們可以一開始就在普通用戶下執(zhí)行mysqldump -u root -p mytest user > ~/user.sql
把mytest庫的user表的數(shù)據(jù)導出到.sql文件中,就不用執(zhí)行接下來的步驟,直接執(zhí)行source /home/admin/user.sql
,就可以恢復出user表和數(shù)據(jù))
現(xiàn)在user.sql是root的文件,我們變更一下屬主,使得普通用戶也可以操作
然后我們source,相當于把.sql
腳本重新執(zhí)行一遍
user表和數(shù)據(jù)全部恢復出來了,有了.sql的腳本,可以在任意的mysql庫上去重建庫表及數(shù)據(jù)
我們還可以直接導出純表數(shù)據(jù):
user.txt內容如下:
這樣就把user表里面的數(shù)據(jù)全部導出來了,我們再去用python或者go去寫一些腳本進行數(shù)據(jù)分析的時候,可以通過-t來作為來作為分隔符把每一個字段的數(shù)據(jù)都獲取出來做額外的數(shù)據(jù)分析,比如分析用戶的行為,建立用戶的畫像等等。
mysqldump數(shù)據(jù)備份命令總結
導出建庫建表的SQL:
//導出所有庫 mysqldump -u 用戶名 -p --all-databases > ~/xxx.sql //一次可以導出多個庫 mysqldump -u 用戶名 -p --databases db1[db2] > ~/xxx.sql //導出庫或者庫里面的某張表 mysqldump -u 用戶名 -p dbname [tablename]> ~/xxx.sql
導出純數(shù)據(jù):
mysql -u 用戶名 -p -D school -e 'select * from user where age>10' > ~/user.txt
通過備份的.sql,導入數(shù)據(jù),建庫建表
登錄mysql,在mysql的shell上執(zhí)行下面語句
source ~/school.sql
或者直接在linux的shell下執(zhí)行
cat ~/data.sql|mysql -u root -p
這樣就可以把我們之前備份的數(shù)據(jù)到mysql的庫表中
到此這篇關于mysqldump進行數(shù)據(jù)備份詳解的文章就介紹到這了,更多相關mysqldump數(shù)據(jù)備份內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解析在MySQL里創(chuàng)建外鍵時ERROR 1005的解決辦法
本篇文章是對在MySQL里創(chuàng)建外鍵時ERROR 1005的解決辦法進行了詳細的分析介紹,需要的朋友參考下2013-06-06mysql判斷當前時間是否在開始與結束時間之間且開始與結束時間允許為空
這篇文章主要介紹了mysql判斷當前時間是否在開始與結束時間之間且開始與結束時間允許為空,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09解讀mysql主從配置及其原理分析(Master-Slave)
在windows下配置的,后面會在Linux下配置進行測試,需要配置mysql數(shù)據(jù)庫同步的朋友可以參考下。2011-05-05優(yōu)化MySQL數(shù)據(jù)庫中的查詢語句詳解
這篇文章主要介紹了優(yōu)化MySQL數(shù)據(jù)庫中的查詢語句,非常實用的經驗總結,需要的朋友可以參考下2014-07-07SELECT INTO 和 INSERT INTO SELECT 兩種表復制語句簡單介紹
Insert是T-sql中常用語句,Insert INTO table(field1,field2,...) values(value1,value2,...)這種形式的在應用程序開發(fā)中必不可少2012-11-11