1

クライアントがMySQLデータベースの単一のテーブルにアップロードすることを要求している900MBのXMLファイルをダウンロードしているところです。1〜2週間前に6 MBのファイルを挿入する必要があり、ファイルをphpmyadminで実行できるSQLクエリに変換しましたが、かなり長い時間がかかりました。

今回はどうすればいいですか?ありがとう

4

2 に答える 2

1

ファイルを CSV 形式に変換できるかどうかを確認します。XML の処理がないため、MySQL テーブルにインポートする方がはるかに高速です。各列に入力されるデータ型に注意する必要があります。

クライアントが CSV で提供できず、これが 1 回限りのアップロードである場合は、MS Excel/Libre Calc/OpenOffice Calc を使用して自分で変換してみてください。

于 2012-05-28T08:25:00.613 に答える
0

毎週発生し、XML とデータベース構造が同じままである場合は、(Dom を使用するのではなく) sax パーサーを使用して SQL ファイルを生成し、mysql コマンド ライン経由でインポートします。

mysql -u ユーザー -p データベース名 < import.SQL

サーバーにアップロードする前にSQLファイルを圧縮して、より迅速に取得できます

パフォーマンスをさらに改善するために、必要に応じてテーブルをロックすることを検討してください (システムがそれを処理できる場合) http://dev.mysql.com/doc/refman/5.1/en/lock-tables.html

于 2012-05-28T13:22:00.173 に答える