単一のデータベースのmysqldumpを実行すると、すべてのテーブルがアルファベット順にダンプされます。
当然、データベースへのmysqldumpのリロードもアルファベット順になります。
SHOW PROCESSLISTを実行できます。mysqldumpを実行しているDB接続を見つけます。ダンプがリロードされると、DB接続は消滅します。
ダンプファイルに含まれるテーブルを知りたい場合は、foobar.sqlに対してこれを実行します
cat foobar.sql | grep "^CREATE TABLE" | awk '{print $3}'
更新2012-05-02 13:53 EDT
テーブルが1つしかないことに気づかずに申し訳ありません。
テーブルがMyISAMの場合、監視する唯一の方法はOSの観点からです。理由?テーブルはリロード中は書き込みロックされます。あなたは何を求めますか?.MYD
および.MYI
ファイルのサイズ。もちろん、それをインポート元の他のDBサーバーでのテーブルサイズと比較する必要があります。
テーブルがInnoDBであり、innodb_file_per_tableを有効にしている場合、監視する唯一の方法はOSの観点からです。理由?テーブルはリロード中は書き込みロックされます。あなたは何を求めますか?.ibd
ファイルのサイズ。もちろん、それをインポート元の他のDBサーバーでのテーブルサイズと比較する必要があります。
テーブルがInnoDBであり、innodb_file_per_tableが無効になっている場合、OSの観点でも役に立ちません。
更新2012-05-02 13:56 EDT
昨年このようなことを取り上げました。「type db.sql | mysql」の進捗率を取得するにはどうすればよいですか
更新2012-05-02 14:09 EDT
標準のmysqldumpは次のようにテーブルを書き込みロックするため:
LOCK TABLES `a` WRITE;
/*!40000 ALTER TABLE `a` DISABLE KEYS */;
INSERT INTO `a` VALUES (123),(451),(199),(0),(23);
/*!40000 ALTER TABLE `a` ENABLE KEYS */;
UNLOCK TABLES;
その場合、テーブルロックが解除されるまでmysqlから進捗を取得する方法はありません。
ダンプファイルを取得LOCK TABLES
してUNLOCK TABLES
コメントアウトできる場合...
- テーブルがMyISAMの場合、SELECT COUNT(*)は機能します
- テーブルがInnoDBの場合、SELECT COUNT(*)はおそらくカウントが完了するまでロードを遅く/停止します