基于PHP的應(yīng)用開發(fā)
本文介紹基于PHP連接和使用Lindorm寬表引擎的方法。
前提條件
已安裝PHP。要求PHP為8.0及以上版本。
已開通MySQL協(xié)議兼容功能。如何開通,請參見開通MySQL協(xié)議兼容功能。
已將客戶端IP添加至白名單,具體操作請參見設(shè)置白名單。
操作步驟
安裝php-mysql模塊。安裝方式,請參見PHP安裝。
配置連接參數(shù)。
$lindorm_addr="ld-uf6k8yqb741t3****-proxy-sql-lindorm-public.lindorm.rds.aliyuncs.com"; $lindorm_username="user"; $lindorm_password="test"; $lindorm_database="default"; $lindorm_port=33060;
參數(shù)說明
參數(shù)
說明
$lindorm_addr
Lindorm寬表引擎的MySQL兼容地址。如何獲取,請參見查看連接地址。
重要如果應(yīng)用部署在ECS實例,建議您通過專有網(wǎng)絡(luò)訪問Lindorm實例,可獲得更高的安全性和更低的網(wǎng)絡(luò)延遲。
如果應(yīng)用部署在本地,在通過公網(wǎng)連接Lindorm實例前,需在控制臺開通公網(wǎng)地址。開通方式:在控制臺選擇
,在寬表引擎頁簽單擊開通公網(wǎng)地址。通過專有網(wǎng)絡(luò)訪問Lindorm實例,$lindorm_addr請?zhí)顚慚ySQL兼容地址對應(yīng)的專有網(wǎng)絡(luò)地址。通過公網(wǎng)訪問Lindorm實例,$lindorm_addr請?zhí)顚慚ySQL兼容地址對應(yīng)的公網(wǎng)地址。
$lindorm_username
如果您忘記用戶密碼,可以通過Lindorm寬表引擎的集群管理系統(tǒng)修改密碼。具體操作,請參見修改用戶密碼。
$lindorm_password
$lindorm_database
需要連接的數(shù)據(jù)庫名稱。默認(rèn)連接default數(shù)據(jù)庫。
$lindorm_port
Lindorm寬表引擎MySQL協(xié)議的端口,固定為33060。
創(chuàng)建連接,通過寬表SQL語法使用Lindorm寬表引擎。以建表為例。
//連接liandorm寬表引擎 $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"); } //創(chuàng)建表 $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
//Lindorm寬表引擎的MySQL兼容地址
$lindorm_addr="ld-uf6k8yqb741t3****-proxy-sql-lindorm-public.lindorm.rds.aliyuncs.com";
//Lindorm寬表引擎的用戶名
$lindorm_username="user";
//Lindorm寬表引擎的密碼
$lindorm_password="test";
//需要連接的數(shù)據(jù)庫名稱
$lindorm_database="default";
//Lindorm寬表引擎MySQL協(xié)議的端口
$lindorm_port=33060;
//連接Lindorm寬表引擎
$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");
}
//創(chuàng)建表
$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;
}
//插入數(shù)據(jù)
$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;
}
//查詢數(shù)據(jù)
$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"]);
}
?>
執(zhí)行成功后將返回如下結(jié)果:
connect to Lindorm successfully
create table successfully
insert data successfully
id 1
name zhangsan
age 17