すべてのプロダクト
Search
ドキュメントセンター

Lindorm:C# を使用してアプリケーションを開発する

最終更新日:Mar 24, 2025

このトピックでは、MySQL.Data ライブラリを使用して C# アプリケーションを開発する方法について説明します。

前提条件

手順

  1. Dotnet をインストールします。Dotnet 公式 Web サイトから Dotnet のインストールパッケージをダウンロードできます。

  2. 次のコードを実行して、Dotnet プロジェクトを作成します。

    dotnet new console --framework net7.0
  3. 次のコードを実行して、MySQL.Data ライブラリの依存関係を追加します。

    dotnet add package MySql.Data -v 8.0.11
  4. 接続パラメータを構成します。

    string connStr = "server=ld-uf6k8yqb741t3****-proxy-sql-lindorm.lindorm.rds.aliyuncs.com;UID=user;database=default;port=33060;password=test";

    パラメータ

    password

    パラメータ

    説明

    server

    Mysql 用の Lindormtable エンドポイント。エンドポイントの取得方法の詳細については、「エンドポイントを表示する」をご参照ください。

    重要
    • アプリケーションが ECS インスタンスにデプロイされている場合は、セキュリティの向上とネットワークレイテンシの低減のために、VPC を使用して Lindorm インスタンスに接続することをお勧めします。

    • アプリケーションがローカルサーバーにデプロイされていて、インターネット経由でLindormインスタンスに接続する必要がある場合は、Lindormコンソールでインスタンスのインターネットエンドポイントを有効にするために、次の手順を実行できます。左側のナビゲーションペインで、[データベース接続] > [ワイドテーブルエンジン] を選択します。[ワイドテーブルエンジン] タブで、[パブリックエンドポイントを有効にする] をクリックします。

    • VPC を使用して Lindorm インスタンスにアクセスする場合は、server の値に Mysql 用の Lindormtable VPC エンドポイントを指定します。インターネットを使用して Lindorm インスタンスにアクセスする場合は、server の値に Mysql 用の Lindormtable インターネットエンドポイントを指定します。

    UID

    パスワードを忘れた場合は、LindormTable のクラスタ管理システムでパスワードを変更できます。詳細については、「ユーザーの管理」をご参照ください。

    LindormTable に接続するために使用するパスワード。

    database

    接続先のデータベースの名前。デフォルトでは、クライアントは default という名前のデータベースに接続されます。

    port

    MySQL を使用して LindormTable にアクセスするために使用するポート。このパラメータの値は 33060 に固定されています。

  5. 接続を確立し、LindormTable SQL を使用して LindormTable で操作を実行します。次のコードブロックは、LindormTable SQL を使用してすべてのデータベースを照会する方法の例を示しています。

    MySqlConnection conn = new MySqlConnection(connStr);
                try
                {
                    Console.WriteLine("Connecting to MySQL..."); // MySQL に接続しています...
                    conn.Open();
                    string sql = "show databases;";
                    MySqlCommand cmd = new MySqlCommand(sql, conn);
                    MySqlDataReader rdr = cmd.ExecuteReader();
                    while (rdr.Read())
                    {
                        Console.WriteLine(rdr[0]);
                    }
                    rdr.Close();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.ToString());
                }
                conn.Close();
                Console.WriteLine("Done."); // 完了
    

サンプルコード

using System;
using MySql.Data.MySqlClient;
namespace connectLindorm
{
    class Program
    {
        static void Main(string[] args)
        {
            // Set server to the LindormTable endpoint for MySQL. // server を MySQL 用の LindormTable エンドポイントに設定します。
            // Set user to the username used to connect to LindormTable. // user を LindormTable に接続するために使用するユーザー名に設定します。
            // Set database to the database that you want to connect. // database を接続先のデータベースに設定します。
            // Set password to the password used to connect to LindormTable. // password を LindormTable に接続するために使用するパスワードに設定します。
            // Set port to the port used to access LindormTable by using MySQL. The value of this parameter is fixed to 33060. // port を MySQL を使用して LindormTable にアクセスするために使用するポートに設定します。このパラメータの値は 33060 に固定されています。
            string connStr = "server=ld-uf6k8yqb741t3****-proxy-sql-lindorm.lindorm.rds.aliyuncs.com;UID=user;database=default;port=33060;password=test";
            MySqlConnection conn = new MySqlConnection(connStr);
            try
            {
                Console.WriteLine("Connecting to MySQL..."); // MySQL に接続しています...
                conn.Open();
                string sql = "show databases";
                MySqlCommand cmd = new MySqlCommand(sql, conn);
                MySqlDataReader rdr = cmd.ExecuteReader();
                while (rdr.Read())
                {
                    Console.WriteLine(rdr[0]);
                }
                rdr.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            conn.Close();
            Console.WriteLine("Done."); // 完了
        }
    }
}

現在のインスタンスに default という名前のデータベースのみが含まれている場合、次の結果が返されます。

Connecting to MySQL...
default
information_schema
Done.