2017-10-08 28 views
1

私は経由して特定のテーブルを作成するためのクエリを取得することができますクエリ。 CREATE文を使用してデータベースを作成したテーブル作成スクリプト、つまりSQLエクスポートファイルを簡単に取得する方法はありますか?phpMyAdminのエクスポート・データベース作成スクリプト

+0

予期しないステートメントの開始: (位置0の "mysqldump"の近く) – user2340939

+0

mysqldumpはSQL文ではなく、実行するプログラムです。 –

答えて

0

私はこれをmysqldumpで解決します。これは、MySQLに付属のコマンドラインツールです。ドキュメントは次のとおりです。https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html

phpMyAdminではなくコマンドプロンプトで実行します。あなたは、MySQLサーバを実行するホストと同じホストか、少なくともネットワーク経由でそのホストに到達できるシェル環境にアクセスする必要があります。例えば

:出力が生成され

mysqldump --no-data mydatabase mytable 

-- 
-- Table structure for table `mytable` 
-- 

DROP TABLE IF EXISTS `mytable`; 
/*!40101 SET @saved_cs_client  = @@character_set_client */; 
/*!40101 SET character_set_client = utf8 */; 
CREATE TABLE `mytable` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `c1` int(11) DEFAULT NULL, 
    `c2` int(11) DEFAULT NULL, 
    `c3` int(11) DEFAULT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4; 

(。私は省いていますより多くの出力があります)

あなたが一度に多くのテーブルの構造をダンプすることができますこのように、またビュー、トリガ、プロシージャなどが含まれます。

--no-dataを使用しない場合は、ダンプする各テーブルのデータも含まれます。これにより、データのバックアップに効果的なツールになります。デフォルトでは、多くのINSERTステートメントの形式でデータがダンプされます。したがって、CREATE TABLEステートメントのように、別のMySQLインスタンスに対してデータベースを実行すると、データベースの構造を再作成することができます。INSERTステートメントは、データを再作成できます。

関連する問題