mysql 後端資料匯出/入
1.背景
由於開發同事需要協助、遷移資料、有三個庫資料量較大 ,使用工具比較慢。
於是想到後端匯入
2.實踐
2.1 查詢安裝路徑
由於我不清楚mysql的 安裝路徑
可以採用 whereis mysql 查詢導原始檔等
which mysql 查詢到的都是執行檔案路徑
ps -ef |grep mysql 可以檢視 具體的安裝路徑
(這個是我的安裝路徑)
usr/bin/mysql 是指:mysql的執行路徑
var/lib/mysql 是指:mysql資料庫檔案的存放路徑
usr/lib/mysql 是指:mysql的安裝路徑
2.2執行資料庫指令
mysqldump
MySQL
自帶的邏輯備份工具。
它的備份原理是通過協議連線到MySQL
資料庫,將需要備份的資料查詢出來,將查詢出的資料轉換成對應的insert
語句,執行這些insert
語句,即可將對應的資料還原
登入資料庫
mysql -h ip -P 埠 -u 使用者 -p
輸入密碼即可
匯出資料
a.匯出全庫
mysqldump -u使用者名稱 -p密碼 資料庫名 > 資料庫名.sql
b.只匯出庫表結構
mysqldump -u使用者名稱 -p密碼 -d 資料庫名 > 資料庫名.sql
匯入資料(注意如果沒建庫需要選建好資料庫)
為防止亂碼可以再匯出的檔案中 加一行 set names utf8;
mysql -u使用者名稱 -p密碼 資料庫名 < 資料庫名.sql
注意: 如果庫在不同的節點
scp 指令
scp local_file remote_username@remote_ip:remote_folder
命令詳解:
Linux scp 命令用於 Linux 之間複製檔案和目錄。
scp 是 secure copy 的縮寫, scp 是 linux 系統下基於 ssh 登陸進行安全的遠端檔案拷貝命令。
scp 是加密的,rcp是不加密的,scp 是 rcp 的加強版
當你伺服器硬碟變為只讀readonlysystem時,用scp可以幫你把檔案移出來。
另外,scp還非常不佔資源,不會提高多少系統負荷,在這一點上,rsync就遠遠不及它了。雖然rsync比scp會快一點,但當小檔案眾多的情況下,rsync會導致硬碟I/O非常高,而scp基本不影響系統正常使用。