這個解析不好弄,其實可以換一種思路,把所有的表名全查出來,然後在按表名生成匯出指令碼,生成的檔案就一個表一個了。
shell樣例如下,僅供參考,請在自己測試環境下測試。指令碼可以包裝在一個大的shell裡面一起執行。
一、生成所有的表名
mysql<<EOF
use cpai;
show tables;
quit
EOF
輸入結果保持到tmp.txt
二、生成匯出單個表資料的指令碼
awk "NR>1" tmp.txt >tables.txt #從第二行開始取
cat tables.txt |awk "{printf "mysqldump 資料庫名 %s >%s.sql\n",$1,$1}" >mysql_dump_sig.sh
三、執行mysql_dump_sig.sh指令碼,既可以匯出一個個表到單獨的每個檔案裡面。
這個解析不好弄,其實可以換一種思路,把所有的表名全查出來,然後在按表名生成匯出指令碼,生成的檔案就一個表一個了。
shell樣例如下,僅供參考,請在自己測試環境下測試。指令碼可以包裝在一個大的shell裡面一起執行。
一、生成所有的表名
mysql<<EOF
use cpai;
show tables;
quit
EOF
輸入結果保持到tmp.txt
二、生成匯出單個表資料的指令碼
awk "NR>1" tmp.txt >tables.txt #從第二行開始取
cat tables.txt |awk "{printf "mysqldump 資料庫名 %s >%s.sql\n",$1,$1}" >mysql_dump_sig.sh
三、執行mysql_dump_sig.sh指令碼,既可以匯出一個個表到單獨的每個檔案裡面。