sql >> データベース >  >> RDS >> Mysql

大規模なMySQLインポートの接続タイムアウトを防ぐ方法

    大規模なMySQLデータベースをインポートするための戦略

    PHPMyAdminインポート

    これを読んでいるとしたら、PHPMyAdminは大規模なMySQLデータベースのインポートのオプションではなかった可能性があります。それにもかかわらず、それは常に試す価値がありますよね? PHPMyAdminインポートの失敗の最も一般的な原因は、インポート制限を超えていることです。ローカルで作業している場合、または独自のサーバーを使用している場合は、MySQLインストールフォルダにあるmy.iniファイルに通常あるMySQLini設定を変更してみてください。 WindowsでWAMPを使用している場合は、MySQL>my.iniのWAMPコントロールパネルを使用してそのファイルにアクセスできます。新しい設定が使用されるように、WAMPを再起動することを忘れないでください。ここで増やしたい設定は次のとおりです。

    max_allowed_packet
    read_buffer_size
    

    強化されたMySQLインポート設定を使用しても、PHP設定が原因でインポートがタイムアウトする場合があります。 PHP.iniにアクセスできる場合は、最大実行時間と関連する設定を編集できます。 WAMPで、PHP>php.iniのWAMPコントロールパネルの下にあるPHP.iniファイルにアクセスします。大規模なMySQLインポートを試行するときは、次の設定の制限を引き上げることを検討してください。

    max_execution_time
    max_input_time
    memory_limit
    

    BigDumpスタッガードMySQLダンプインポーターの使用

    基本的なPHPMyAdminのインポートが機能しない場合は、Ozerov.deのBigDumpスクリプトを試してMySQLのインポートをずらしてください。この便利なスクリプトは、インポートを小さなブロックで実行します。これは、大きなMySQLダンプを正常にインポートするためによく必要なことです。これは、http://www.ozerov.de/bigdump/ から無料でダウンロードできます。 。

    Big Dumpを使用するプロセスは非常に単純です。基本的に、SQLインポートファイルとBig Dumpスクリプトをサーバー上に一緒に配置し、Big Dumpスクリプトにいくつかの構成を設定してから、スクリプトを実行します。残りはBigDumpが処理します!

    この他の点では優れたオプションに関する重要なポイントの1つは、拡張挿入を含むMySQLエクスポートではまったく機能しないことです。したがって、拡張挿入を防ぐオプションがある場合は、それを試してください。それ以外の場合は、大きなMySQLファイルをインポートするために別の方法を使用する必要があります。

    MySQLコンソールでコマンドラインに移動

    WAMPを実行している場合(および実行していない場合でも)、MySQLコンソールを使用して大規模なMySQLデータベースを追跡およびインポートするオプションが常にあります。この投稿を書いているときに、この方法で4GBのデータベースをインポートしています。インポートする4GBのSQLファイルがある場合、この方法でも時間がかかるため、実際に私が書くのに時間がかかるのはそのためです。

    一部の開発者(通常は私)は、黒い画面を開いて不可解なコマンドを入力することに恐れを感じています。しかし、それは解放される可能性があり、MySQLデータベースに関しては、多くの場合、それが最善の方法です。 WAMPでは、MySQL>MySQLConsoleのWAMPコントロールパネルからMySQLコンソールにアクセスします。次に、MySQLデータベースをインポートするために必要な2つの簡単なMySQLコンソールコマンドをコマンドラインスタイルで学習しましょう。

    use `db_name`
    

    コマンドuse その後にデータベース名が続くと、使用するデータベースがMySQLコンソールに通知されます。インポート先のデータベースをすでに設定している場合は、まずuseを発行します。 指図。データベースの名前がmy_great_databaseであるとします。 。この場合、MySQLコンソールで次のコマンドを発行します。コマンドはセミコロンで終了する必要があることに注意してください。

    mysql-> use my_great_database;
    
    mysql-> source sql_import_file.sql
    

    コマンドsource 続いてSQLファイルの場所を指定すると、useで以前に指定したデータベースにSQLファイルがインポートされます。 指図。パスを指定する必要があるため、ローカルサーバーでWAMPを使用している場合は、SQLファイルをC:\ sql\my_import.sqlなどの入手しやすい場所に配置することから始めます。このパス例を使用した完全なコマンドは次のようになります。

    mysql-> source C:\sql\my_import.sql;
    

    そのコマンドを実行すると、SQLファイルのインポートが開始されます。 MySQLコンソールを閉じる前に、クエリを実行してインポートを完了させます。

    MySQLコマンドラインの詳細なドキュメントはここにあります: http:// dev.mysql.com/doc/refman/5.5/en/mysql.html

    別の解決策は、 MySQLWorkbench を使用することです。 。



    1. SQLiteでテーブルを作成する

    2. SQLSecure4.0の一般提供の発表

    3. マーケティングデータベースを構築するための5つのステップ

    4. OracleにはSQLServerのテーブル変数に相当するものがありますか?