背景
需要搞mysql資料同步,從一台伺服器把資料庫同步到另外一台伺服器上,如果折騰過的話,就知道有個這玩意--mysqldump,其實就是mysql自帶的一個指令而已
操作步驟
1. 認識mysqldump
一般都是mysql安裝目錄/bin/下,指令也簡單可以通過mysqldump --help 檢視下
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuQmN0MmY3YmZ1cDMyYDN3U2YhZWZ4IDZiBzMhNzYhVjMfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
2. 導出sql
/mysql/bin/mysqldump -u${username} -p${password} -h ${host} -P ${port} --quick -d ${database_name} --skip-lock-tables > ${database_name}.sql
将${}替換成需要的值
上面語句的意思就是講database_name 這個庫導出成 database_name.sql
而且由于加了-d隻導出表結構
3. 導入sql
/mysql/bin/mysql -u${username} -p${password} --database ${database_name} < ${database_name}.sql
4. 思考,很多庫需要處理的時候呢
寫成腳本的形式,思路如下:
- 将需要導出的庫的庫名整理在一個txt檔案中,每一行為一個庫;
- 通過周遊1中的檔案,然後逐個執行導出sql的指令;
-
然後又通過周遊1中的txt檔案,逐個執行導入sql的指令;
具體腳本如下:
mysqldump的簡單使用背景操作步驟題外話
題外話
其實很多sql可視化工具都支援導出導入功能的,哈哈哈,其實也挺好用的,隻是可能處理大量資料的時候不友善,使用什麼效率最高肯定使用是什麼,當然前提是你腳本也要會,不是嗎?
雖千萬人,吾往矣!