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

Lindorm:PHP を使用したアプリケーションの開発

最終更新日:Apr 08, 2025

このトピックでは、PHP を使用して LindormTable に接続し、使用する手順について説明します。

前提条件

  • インスタンスで MySQL 互換機能が有効になっていること。詳細については、「MySQL 互換機能を有効にする」をご参照ください。

  • クライアントの IP アドレスが Lindorm インスタンスのホワイトリストに追加されていること。詳細については、「ホワイトリストを構成する」をご参照ください。

手順

  1. php-mysql モジュールをインストールします。詳細については、「インストール」をご参照ください。

  2. 接続パラメータを構成します。

    $lindorm_addr="ld-uf6k8yqb741t3****-proxy-sql-lindorm-public.lindorm.rds.aliyuncs.com";
    $lindorm_username="user";
    $lindorm_password="test";
    $lindorm_database="default";
    $lindorm_port=33060;

    パラメータ

    $lindorm_password

    パラメータ

    説明

    $lindorm_addr

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

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

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

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

    $lindorm_username

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

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

    $lindorm_database

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

    $lindorm_port

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

  3. 接続を確立し、LindormTable SQL を使用して LindormTable で操作を実行します。次のコードブロックは、LindormTable SQL を使用してテーブルを作成する例を示しています。

    // LindormTable に接続します。
    $lindorm_conn=mysqli_connect($lindorm_addr,$lindorm_username,$lindorm_password,$lindorm_database, $lindorm_port);
    if (!$lindorm_conn) {
        printf("Can't connect to Lindorm Server. Errorcode: %s \n",mysqli_error($lindorm_conn));
        exit;
    } else {
        printf("connect to Lindorm successfully\n");
    }
    
    
    // テーブルを作成します。
    $create_table="create table if not exists user_test(id int, name varchar,age int, primary key(id))";
    if (mysqli_query($lindorm_conn, $create_table)) {
        printf("create table successfully\n");
    } else {
        printf("create table error: %s \n", mysqli_error($lindorm_conn));
        exit;
    }

サンプルコード

<?php

// LindormTable の MySQL エンドポイントを指定します。
$lindorm_addr="ld-uf6k8yqb741t3****-proxy-sql-lindorm-public.lindorm.rds.aliyuncs.com";
// LindormTable に接続するために使用するユーザー名を指定します。
$lindorm_username="user";
// LindormTable に接続するために使用するパスワードを指定します。
$lindorm_password="test";
// 接続先のデータベースを指定します。
$lindorm_database="default";
// MySQL を使用して LindormTable にアクセスするために使用するポートを指定します。
$lindorm_port=33060;

// LindormTable に接続します。
$lindorm_conn=mysqli_connect($lindorm_addr,$lindorm_username,$lindorm_password,$lindorm_database, $lindorm_port);
if (!$lindorm_conn) {
    printf("Can't connect to Lindorm Server. Errorcode: %s \n",mysqli_error($lindorm_conn));
    exit;
} else {
    printf("connect to Lindorm successfully\n");
}


// テーブルを作成します。
$create_table="create table if not exists user_test(id int, name varchar,age int, primary key(id))";
if (mysqli_query($lindorm_conn, $create_table)) {
    printf("create table successfully\n");
} else {
    printf("create table error: %s \n", mysqli_error($lindorm_conn));
    exit;
}

// テーブルにデータを挿入します。
$insert_sql="upsert into user_test(id,name,age) values(1,'zhangsan',17)";
if (mysqli_query($lindorm_conn, $insert_sql)) {
    printf("insert data successfully\n");
} else {
    printf("insert data error: %s \n", mysqli_error($lindorm_conn));
    exit;
}

// テーブル内のデータをクエリします。
$select_sql="select * from user_test";
$result=mysqli_query($lindorm_conn, $select_sql);
while($row = mysqli_fetch_array($result)) {
    printf("id %d\n", $row["id"]);
    printf("name %s\n", $row["name"]);
    printf("age %d\n", $row["age"]);
}

?>

次の結果が返されます。

connect to Lindorm successfully
create table successfully
insert data successfully
id 1
name zhangsan
age 17