MySQL に 1,000 万件のレコードを素早く挿入する方法

MySQL に 1,000 万件のレコードを素早く挿入する方法

面接で「MySQL に 1,000 万件のレコードをすばやく挿入するにはどうすればよいか」という質問があると聞きました。

個人的に試してみたところ、10,000 データの挿入に 0.9 秒、100,000 データの挿入に 4.7 秒、1,000,000 データの挿入に約 58 秒かかりました。1,000,000 データの挿入では、ラップトップは 5 分ほど実行され、自動的に停止しました。私はとても興奮して、それについて考えていました。次のコードを使用しました。

-- データベース使用テストを入力します。
--すべてのテーブルを表示 show tables;
-- メジャーテーブルを作成します。create table majors(id int, major varchar(255));
-- 終了文字 $ を定義します
区切り文字「$」;
-- ストアド プロシージャを作成し、ストアド メソッドを定義します。create procedure batchInsert(in args int)
始める
i int をデフォルトで 1 と宣言します。
-- トランザクションを有効にします (重要! そうしないと、100 万件のデータの計算に数日かかります)
トランザクションを開始します。
i <= argsの場合
専攻(id,major)に値(i,concat("ソフトウェアエンジニアリング-",i))を挿入します。
i = i + 1 と設定します。
終了しながら;
専念;
終わり
$

-- データを生成する関数を呼び出します -- 最初に 100,000 件のレコードを生成し、$ を入力して Enter キーを押して実行します call batchInsert(100000);
$

10万個のデータを生成するのに4.44秒かかりました

ここに画像の説明を挿入

100 万個のデータを生成するのに 58.62 秒かかりました。これはほぼ 1 分です。

ここに画像の説明を挿入

1000 万個のデータを生成します。画面の前にいる大物たちが試すことができます。ハハ、Ctrl + C でプロセスを強制終了しました!

ここに画像の説明を挿入

要約する

これで、MySQL に 1000 万件のレコードをすばやくバッチ挿入する方法に関するこの記事は終了です。MySQL にデータをバッチ挿入する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL に大量のデータを挿入する 4 つの方法の例
  • MYSQL バッチ挿入データ実装コード
  • MySQL でバッチ挿入を実装してパフォーマンスを最適化するチュートリアル
  • ユニークインデックスを使用したMySQLバッチ挿入を回避する方法
  • MySQL バッチデータ挿入スクリプト
  • MySQL バッチ SQL 挿入パフォーマンス最適化の詳細な説明
  • MySQL バッチ挿入とユニークインデックスの問題に対する解決策
  • MySQL の挿入およびバッチ ステートメントのいくつかの例の詳細な説明

<<:  高度な CSS の 3 つの方法を使用して複数行の省略を実装するサンプル コード

>>:  Web デザイン リファレンス Firefox デフォルト スタイル

推薦する

Windows10にmysql5.7.18をインストールするチュートリアル

このチュートリアルでは、MySQL 5.7.18のインストールと設定方法を参考までに紹介します。具体...

IDEA が MySQL ポート番号占有に接続できない問題の解決方法

コマンドラインでMYSQLに正常にログインでき、NavicatもMySQLに正常に接続できますが、I...

MySQL 5.7.20 圧縮版のダウンロードとインストールの簡単なチュートリアル

1. ダウンロードアドレス:参考: http://dev.mysql.com/downloads/m...

JavaScript クリップボードの使用法の詳細な説明

(1)はじめに: clipboard.js は、テキストをクリップボードにコピーする機能を実装する軽...

訪問者を惹きつけるウェブサイトコンテンツを作成する14の方法

ネットサーフィンをしていると、私の注意を引こうとする美しいグラフィックでいっぱいの Web サイトを...

jQueryはアコーディオンの小さなケースを実装します

この記事では、アコーディオンを実装するためのjQueryの具体的なコードを参考までに紹介します。具体...

CSS XTHML の記述標準とよくある問題の概要 (ページ最適化)

プロジェクトドキュメントディレクトリDiv+CSS 命名規則 - 4 - Div+css 命名規則 ...

Element-uiはテーブル内のセルを直接クリックして編集します

目次成果を達成する実装コード最近、会社でelementUIを使い始めたため、開発の過程でテーブルのセ...

JavaScript モバイル H5 画像生成ソリューションの説明

現在、WeChatパブリックアカウントの運用活動が多く、写真を生成する必要があります。生成された写真...

ログインインターフェースの使いやすさとセキュリティのバランスをとる方法

ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...

Founder フォント ライブラリの中国語と英語のファイル名比較表

Founder Type Library は、Founder Type Library ビジネス チ...

ReactはExcelファイルのインポートとエクスポートを実装します

目次プレゼンテーション層ビジネスレイヤーコアプラグイン xlsx ExcelインポートExcelエク...

MySQLデータの同時更新を処理する方法

UPDATE はロックしますか?以下のような場合、SQL文はロックされますか? テーブル1を更新しま...

JavaScript セレクター関数 querySelector および querySelectorAll

目次1. querySelectorは単一の要素を照会する1. ドキュメントインスタンスの呼び出し2...

mysql replace into の使用法の詳細な説明

replace ステートメントは、一般的に insert ステートメントに似ています。ただし、テーブ...