タイトルのまんまのプチトリビアを紹介しようと思う。mysqlの--one-databaseオプションを使えば「mysqldumpで--all-databasesとか--databasesオプションを使って作成したダンプファイルに含まれる複数のデータベースから、一つのデータベースだけを選択してリストアする」という操作ができるけど、毎回ダンプファイル全体を読み込むのは無駄じゃないか?と思われることもあるだろう。だったら事前にダンプファイルを分けちゃいたい!と考えるのが人情というもの。そんなときはawkコマンドを使うといい。 #!/usr/bin/awk -f BEGIN { dump_current_db = 0; num_db = split(databases, db_arr, ",") for (i = 1; i <= num_db; i++) { db_arr[i] = "`" db_
![特定のデータベースだけをmysqldumpで作成したダンプファイルから抜き出すawkスクリプト](https://cdn-ak-scissors.b.st-hatena.com/image/square/43a7503923f34fab27b0677da801e1b95ad34697/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEjOcP9-xC0VQ5b6lyNiky2pAvXe3pfq6WzFuLuVLpkXsO_PczPpQJL-ZevtqHNoGhMsHg_zhxrXz8zv8lTtNzxtbGfb6Mk-Zm4-oA6SBZDaOmxdLgS9CmGqIy4kR_c6LIrK6jjJPeRSsPs%2Fs800%2Flogo.png)