开发者社区 > 数据库 > 数据仓库 > 正文

php连接云数据仓库ADB,如何操作?

php连接云数据仓库ADB,如何操作?

展开
收起
嘟嘟嘟嘟嘟嘟 2024-08-28 08:11:30 56 0
2 条回答
写回答
取消 提交回答
  • 注意事项
    操作系统为Linux时,需要安装php-mysql 5.1.x模块。
    操作系统为Windows时,需要安装php_MySQL.dll。
    如果使用公网地址连接AnalyticDB MySQL集群,您还需要将待访问AnalyticDB MySQL集群的设备IP加入白名单。

    使用mysqli连接AnalyticDB MySQL

    //AnalyticDB MySQL集群的连接地址,可以在控制台的集群信息页面获取连接地址。
    $ads_server_name="am-bp***.ads.aliyuncs.com"; 
    //AnalyticDB MySQL集群的用户账号:高权限账号或者普通账号。
    $ads_username="account_name";
    //AnalyticDB MySQL集群的用户账号的密码。
    $ads_password="account_password";  
    //AnalyticDB MySQL集群的数据库名称。
    $ads_database="db_name"; 
    //AnalyticDB MySQL集群的连接端口号。
    $ads_port=3306;     
    //连接AnalyticDB MySQL。
    $ads_conn=mysqli_connect($ads_server_name,$ads_username,$ads_password,$ads_database, $ads_port);
    $strsql="SELECT user_id FROM my_ads_db.my_first_table limit 20;";
    $result=mysqli_query($ads_conn, $strsql);
    while($row = mysqli_fetch_array($result)) {
     //user_id为列名
      echo $row["user_id"]; 
    }
    

    使用PDO连接AnalyticDB MySQL

    
    //AnalyticDB MySQL集群的连接地址,可以在控制台的集群信息页面获取连接地址。
    $ads_server_name = "am-bp***.ads.aliyuncs.com";
    //AnalyticDB MySQL集群的用户账号:高权限账号或者普通账号。
    $ads_username = "account_name"; 
    //AnalyticDB MySQL集群的用户账号的密码。
    $ads_password = "account_password"; 
    //AnalyticDB MySQL集群的数据库名称。
    $ads_database = 'db_name'; 
    //AnalyticDB MySQL集群的连接端口号。
    $ads_port = 3306;
    $dsn = "mysql:host={$ads_server_name};dbname={$ads_database};port={$ads_port}";
    try {
        $dbh = new PDO($dsn, $ads_username, $ads_password);
        echo 'PDO Success !';
    } catch (PDOException $e) {
        echo 'PDO Connection failed: ' . $e->getCode() ."\n" . $e->getMessage() ."\n". $e->getTraceAsString();
    }
    

    参考链接

    https://help.aliyun.com/zh/analyticdb/analyticdb-for-mysql/user-guide/php?spm=a2c4g.11186623.0.i2

    2024-09-24 09:58:43
    赞同 5 展开评论 打赏
  • 在PHP中连接ADB MySQL,你可以使用mysqli或PDO两种方式:

    使用mysqli连接ADB MySQL:

    配置ADB MySQL集群的连接信息(地址、用户名、密码、数据库名和端口)。
    使用mysqli_connect函数建立连接。
    执行SQL查询并处理结果。

    示例代码:
    $ads_server_name = "am-bp*.ads.aliyuncs.com";
    $ads_username = "account_name";
    $ads_password = "account_password";
    $ads_database = "db_name";
    $ads_port = 3306;
    $ads_conn = mysqli_connect($ads_server_name, $ads_username, $ads_password, $ads_database, $ads_port);
    $strsql = "SELECT user_id FROM my_ads_db.my_first_table limit 20;";
    $result = mysqli_query($ads_conn, $strsql);
    while($row = mysqli_fetch_array($result)) {
    echo $row["user_id"];
    }

    使用PDO连接ADB MySQL:

    设置数据源名称(DSN)包含连接信息。
    使用PDO类实例化连接对象,通过try-catch处理可能的异常。

    示例代码:
    $ads_server_name = "am-bp*.ads.aliyuncs.com";
    $ads_username = "account_name";
    $ads_password = "account_password";
    $ads_database = 'db_name';
    $ads_port = 3306;
    $dsn = "mysql:host={$ads_server_name};dbname={$ads_database};port={$ads_port}";
    try {
    $dbh = new PDO($dsn, $ads_username, $ads_password);
    echo 'PDO Success !';
    } catch (PDOException $e) {
    echo 'PDO Connection failed: ' . $e->getCode() ."\n" . $e->getMessage() ."\n". $e->getTraceAsString();
    }

    此回答整理自钉群“云数据仓库ADB-开发者群”

    2024-08-28 10:54:43
    赞同 51 展开评论 打赏

阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。

相关产品

  • 云原生数据仓库 AnalyticDB PostgreSQL版
  • 相关电子书

    更多
    PHP安全开发:从白帽角度做安全 立即下载
    PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载
    复杂PHP系统性能瓶颈排查及优化 立即下载