テーブルまたはデータをエクスポートする

広告

phpMyAdmin を使って MySQL に作成済みのテーブルをエクスポートする方法について解説します。テーブル単位の他に、テーブルに格納されている選択したデータだけをエクスポートすることも可能です。

(2021 年 07 月 07 日公開 / 2021 年 07 月 07 日更新)

テーブルをエクスポートする

データベースの中の特定のテーブルをエクスポートする方法です。 phpMyAdmin に管理者ユーザーでログインして下さい。

テーブルをエクスポートする(1)

画面上部に表示されている「データベース」をクリックしてください。

テーブルをエクスポートする(2)

データベースの管理画面が表示されます。作成済みのデータベースの一覧が表示されます。

テーブルをエクスポートする(3)

今回エクスポートするテーブルが追加されているデータベース名をクリックしてください。

テーブルをエクスポートする(4)

テーブルの管理画面が表示されます。対象のデータベースに追加されているテーブルの一覧が表示されます。

テーブルをエクスポートする(5)

エクスポートするテーブルにチェックを付けてください。そのあとでテーブルの一覧の下にあるドロップダウンメニューをクリックし、表示されたメニューの中から「エクスポート」をクリックしてください。

テーブルをエクスポートする(6)

テーブルをエクスポートする画面が表示されます。

テーブルをエクスポートする(7)

エクスポートするフォーマットを選択します。「フォーマット」のブロックにあるドロップダウンメニュをクリックするとフォーマットを選択できます。

テーブルをエクスポートする(8)

選択可能なフォーマットは次のとおりです。

CodeGen
CSV
CSV for MS Excel
JSON
LaTex
MediaWiki Table
Microsoft Word 2000
OpenDocument Spreadsheet
OpenDocument Text
PDF
PHP array
SQL
Texy! text
XML
YAML

今回は SQL を選択しました。

テーブルをエクスポートする(9)

なお「エクスポート方法」のブロックで「詳細 - 可能なオプションをすべて表示」を選択すると、選択中のフォーマットで設定可能なより詳細な設定項目の一覧が表示されます。

テーブルをエクスポートする(10)

設定が完了したら画面右下にある「実行」をクリックしてください。

テーブルをエクスポートする(11)

対象のテーブルが SQL のフォーマットでファイルにエクスポートされました。今回の場合、ファイル名は personal.sql で、作成されたファイルは自動的にダウンロードされますので任意の場所に保存しておいてください。テーブルのエクスポートはこれで完了です。

エクスポートされたファイルを確認する

先ほど SQL 形式でエクスポートしたファイルはテキストファイルで、テキストエディタで開いてみると次のように表示されます。

-- phpMyAdmin SQL Dump
-- version 5.1.1
-- https://www.phpmyadmin.net/
--
-- ホスト: localhost
-- 生成日時: 2021-07-06 19:19:23
-- サーバのバージョン: 8.0.25
-- PHP のバージョン: 8.0.8

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- データベース: `personal`
--

-- --------------------------------------------------------

--
-- テーブルの構造 `friends`
--

CREATE TABLE `friends` (
  `id` int NOT NULL,
  `name` varchar(20) NOT NULL,
  `age` int NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- テーブルのデータのダンプ `friends`
--

INSERT INTO `friends` (`id`, `name`, `age`) VALUES
(1, 'Suzuki', 27),
(2, 'Takahashi', 21),
(3, 'Honda', 34),
(4, 'Endou', 18),
(5, 'Kojima', 25),
(6, 'Yasuda', 40);

--
-- ダンプしたテーブルのインデックス
--

--
-- テーブルのインデックス `friends`
--
ALTER TABLE `friends`
  ADD PRIMARY KEY (`id`);

--
-- ダンプしたテーブルの AUTO_INCREMENT
--

--
-- テーブルの AUTO_INCREMENT `friends`
--
ALTER TABLE `friends`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

SQL 形式でエクスポートした場合、ダウンロードしたファイルに記載されている SQL 文を順に実行していくことで、元のテーブルと同じテーブルが作成できるようになっています。

テーブルのデータをエクスポートする

テーブルに追加されているデータだけをエクスポートすることもできます。先ほどと同じ手順でテーブルの管理画面を表示してください。

テーブルのデータをエクスポートする(1)

エクスポートするデータが追加されているテーブル名をクリックしてください。

テーブルのデータをエクスポートする(2)

対象のテーブルに追加されているデータの一覧が表示されます。

テーブルのデータをエクスポートする(3)

エクスポートするデータのチェックをしてください。そのあとで、データの一覧の下に表示されている「エクスポート」をクリックしてください。

テーブルのデータをエクスポートする(4)

テーブルのデータをエクスポートする(5)

テーブルのデータをエクスポートする画面が表示されます。

テーブルのデータをエクスポートする(6)

エクスポートするフォーマットを選択します。「フォーマット」のブロックにあるドロップダウンメニュをクリックするとフォーマットを選択できます。

テーブルのデータをエクスポートする(7)

選択可能なフォーマットは次のとおりです。

CodeGen
CSV
CSV for MS Excel
JSON
LaTex
MediaWiki Table
Microsoft Word 2000
OpenDocument Spreadsheet
OpenDocument Text
PDF
PHP array
SQL
Texy! text
XML
YAML

今回は SQL を選択しました。

テーブルをエクスポートする(8)

なお「エクスポート方法」のブロックで「詳細 - 可能なオプションをすべて表示」を選択すると、選択中のフォーマットで設定可能なより詳細な設定項目の一覧が表示されます。

テーブルをエクスポートする(9)

設定が完了したら画面右下にある「実行」をクリックしてください。

テーブルをエクスポートする(10)

対象のデータが SQL のフォーマットでファイルにエクスポートされました。今回の場合、ファイル名は friends.sql で、作成されたファイルは自動的にダウンロードされますので任意の場所に保存しておいてください。テーブルのデータのエクスポートはこれで完了です。

エクスポートされたファイルを確認する

先ほど SQL 形式でエクスポートしたファイルはテキストファイルで、テキストエディタで開いてみると次のように表示されます。

-- phpMyAdmin SQL Dump
-- version 5.1.1
-- https://www.phpmyadmin.net/
--
-- ホスト: localhost
-- 生成日時: 2021-07-06 19:37:44
-- サーバのバージョン: 8.0.25
-- PHP のバージョン: 8.0.8

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- データベース: `personal`
--

-- --------------------------------------------------------

--
-- テーブルの構造 `friends`
--

CREATE TABLE `friends` (
  `id` int NOT NULL,
  `name` varchar(20) NOT NULL,
  `age` int NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- テーブルのデータのダンプ `friends`
--

INSERT INTO `friends` (`id`, `name`, `age`) VALUES
(2, 'Takahashi', 21),
(3, 'Honda', 34),
(4, 'Endou', 18);

--
-- ダンプしたテーブルのインデックス
--

--
-- テーブルのインデックス `friends`
--
ALTER TABLE `friends`
  ADD PRIMARY KEY (`id`);

--
-- ダンプしたテーブルの AUTO_INCREMENT
--

--
-- テーブルの AUTO_INCREMENT `friends`
--
ALTER TABLE `friends`
  MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

テーブルを作成するための CREATE TABLE 文とテーブルに格納されているデータの中で選択したデータを追加するための INSERT INTO 文が記述されています。テーブルのデータをエクスポートしましたがテーブルを作成する SQL 文も含まれていました。

-- --

phpMyAdmin を使って MySQL に作成済みのテーブルをエクスポートする方法について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。