MySQL CLI 経由でTiDB Cloudにデータをインポートする

このドキュメントでは、 MySQL コマンドラインクライアントを介してTiDB Cloudにデータをインポートする方法について説明します。SQL ファイルまたは CSV ファイルからデータをインポートできます。次のセクションでは、各ファイル タイプからデータをインポートするための手順を順を追って説明します。

前提条件

MySQL CLI 経由でTiDB Cloudにデータをインポートするには、次の前提条件を満たす必要があります。

  • TiDB Cloudクラスターにアクセスできます。TiDB クラスターがない場合は、 TiDB Cloudサーバーレスクラスタを構築するの手順に従って作成してください。
  • ローカル コンピュータに MySQL CLI をインストールします。

ステップ1. TiDB Cloudクラスターに接続する

選択した TiDB デプロイメント オプションに応じて、TiDB クラスターに接続します。

  • TiDB Cloud Serverless
  • TiDB Cloud Dedicated
  1. クラスターページに移動し、ターゲット クラスターの名前をクリックして概要ページに移動します。

  2. 右上隅の「接続」をクリックします。接続ダイアログが表示されます。

  3. 接続ダイアログの構成が動作環境と一致していることを確認します。

    • 接続タイプはPublicに設定されています。
    • Connect With はMySQL CLIに設定されています。
    • オペレーティング システムは環境に適合します。
  4. ランダムなパスワードを作成するには、 「パスワードの生成」をクリックします。

    ヒント:

    以前にパスワードを作成したことがある場合は、元のパスワードを使用するか、 「パスワードのリセット」をクリックして新しいパスワードを生成します。

  1. クラスターページに移動し、ターゲット クラスターの名前をクリックして概要ページに移動します。

  2. 右上隅の「接続」をクリックします。接続ダイアログが表示されます。

  3. [どこからでもアクセスを許可]をクリックします。

    接続文字列を取得する方法の詳細については、 パブリック接続経由​​でTiDB Cloud Dedicatedに接続する参照してください。

ステップ2. テーブルを定義し、サンプルデータを挿入する

データをインポートする前に、テーブル構造を準備し、実際のサンプルデータを挿入する必要があります。以下は、テーブルを作成してサンプルデータを挿入するために使用できるサンプルSQLファイル( product_data.sql )です。

-- Create a table in your TiDB database CREATE TABLE products ( product_id INT PRIMARY KEY, product_name VARCHAR(255), price DECIMAL(10, 2) ); -- Insert sample data into the table INSERT INTO products (product_id, product_name, price) VALUES (1, 'Laptop', 999.99), (2, 'Smartphone', 499.99), (3, 'Tablet', 299.99);

ステップ3. SQLまたはCSVファイルからデータをインポートする

SQL ファイルまたは CSV ファイルからデータをインポートできます。次のセクションでは、各タイプからデータをインポートする手順を順を追って説明します。

  • From an SQL file
  • From a CSV file

SQL ファイルからデータをインポートするには、次の手順を実行します。

  1. インポートするデータを含む実際の SQL ファイル (たとえば、 product_data.sql ) を指定します。この SQL ファイルには、実際のデータを含むINSERTステートメントが含まれている必要があります。

  2. SQL ファイルからデータをインポートするには、次のコマンドを使用します。

    mysql --comments --connect-timeout 150 -u '<your_username>' -h <your_cluster_host> -P 4000 -D test --ssl-mode=VERIFY_IDENTITY --ssl-ca=<your_ca_path> -p <your_password> < product_data.sql

注記:

ここで使用されるデフォルトのデータベース名はtestですが、手動で独自のデータベースを作成することも、SQL ファイルでCREATE DATABASEコマンドを使用することもできます。

CSV ファイルからデータをインポートするには、次の手順を実行します。

  1. データのインポートのニーズに合わせて、TiDB でデータベースとスキーマを作成します。

  2. インポートするデータを含むサンプル CSV ファイル (例: product_data.csv ) を提供します。次に、CSV ファイルの例を示します。

    製品データ.csv:

    product_id,product_name,price 4,Laptop,999.99 5,Smartphone,499.99 6,Tablet,299.99
  3. CSV ファイルからデータをインポートするには、次のコマンドを使用します。

    mysql --comments --connect-timeout 150 -u '<your_username>' -h <your_host> -P 4000 -D test --ssl-mode=VERIFY_IDENTITY --ssl-ca=<your_ca_path> -p<your_password> -e "LOAD DATA LOCAL INFILE '<your_csv_path>' INTO TABLE products FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 LINES (product_id, product_name, price);"
  4. パス、テーブル名 (この例ではproducts )、 <your_username><your_host><your_password><your_csv_path><your_ca_path> 、およびその他のプレースホルダーを実際の情報に置き換え、必要に応じてサンプル CSV データを実際のデータセットに置き換えてください。

注記:

LOAD DATA LOCAL INFILE構文の詳細については、 LOAD DATA参照してください。

このページは役に立ちましたか?