エクスポートとインポート機能について
MySQL Workbenchには、dumpファイルをエクスポートしたり、インポートしたりすることで、DBのデータをバックアップしたり、リストアしたりすることができます。
エクスポートの方法
Server>Data Exportを選択して、エクスポートの画面を開きます。
そうすると、以下のような画面が開きます。
エクスポートしたいテーブルなどに選択します。
エクスポートのdumpファイルの出力形式のリストがありますが、違いは以下の通りです。
- Dump Structure and Data:テーブル構造と、テーブルのデータをエクスポート
- Dump Data Only:テーブル構造はなしで、テーブルのデータのみエクスポート
- Dump Structure Only:テーブル構造のみで、テーブルのデータはなしのエクスポート
今回はDump Structure and Dataを選びます。
Start Exportでエクスポートを実行すれば、「Export to Dump Project Folder」で指定したフォルダにDumpファイルが出力されます。
※細かい設定が必要な場合は、右上のAdvanced Optionsなどで活用できる項目があるかもしれません。
出力されたdumpのファイルを確認すると、以下のような感じで、
内容としては、SQLで、テーブル定義のクエリと、INSERTのクエリが書いてあります。
DROP TABLE IF EXISTS `employee`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `employee` (
`Id` int NOT NULL,
`name` varchar(45) DEFAULT NULL,
`age` int DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `employee`
--
LOCK TABLES `employee` WRITE;
/*!40000 ALTER TABLE `employee` DISABLE KEYS */;
INSERT INTO `employee` VALUES (1,'taro',22),(3,'akira',34);
/*!40000 ALTER TABLE `employee` ENABLE KEYS */;
UNLOCK TABLES;
このファイルをインポートの時に使えば、リストアできます。
インポートの方法
Server>Data Importを選択して、インポートの画面を開きます。
先ほどエクスポートしたdumpファイルがあるフォルダのパスを指定すると、
エクスポートする対象のテーブルなどが表示されますので、必要なものを選択し、Start Importでインポートできます。
インポート完了後、テーブルが作成され、データも問題なく投入されていることを確認できました。