mysqlダンプデータからテーブルごとに切り出したダンプデータを作成する

Pocket
Bookmark this on Google Bookmarks

mysqlダンプデータからテーブルごとに切り出したダンプデータを作成する

切り出しファイルの行数を算出

まずgrepを使用してmysqlのダンプデータからテーブルごとのDDLからDMLまでの行数を抜き出します。

ファイル切り出し

tbl_hのdumpファイルを切り出したいとき、
1562行目から次のDROP分の1行前の2941行目を切り出せばできます。

このとき、

とすれば1562行目から2941行目のdumpファイルが作成できるのですが、ファイルが大きいとCPU使用率が高く、なおかつ時間がかかります。

高速ファイル切り出し

(2941 – 1562 + 1 = 1380)
とすると高速化され、なおかつCPU使用率も高くありません。

高速ファイル切り出しのシェル登録

ただ、headを使用すると切り出す行が何行あるかの計算をしなくてはならないので面倒です。
そんなときは、

を.zshrcなどに登録しておくことで

とすれば、5行目から7行目の3行分が切り出せます。

Pocket
Bookmark this on Google Bookmarks