search

Home  >  Q&A  >  body text

php - BAE平台无法访问数据库

按照 http://developer.baidu.com/wiki/index... 中mysqli写的,已经申请并且部署到服务器以后访问数据库有如下错误:

Connect Server Failed: AK SK Invalid

请解释如何使用

PHPzPHPz2894 days ago427

reply all(2)I'll reply

  • 怪我咯

    怪我咯2017-04-10 14:24:58

    这个错误提示的意思是数据库接入的账号和密码不匹配。

    百度云数据库的配置信息是通过环境变量获取的,建议可以写一个php用于获取自己的这几个变量,可以把页面看到的变量再配置到需要的配置文件中,其中,ak和sk分别对应用户使用数据库时需要传入的用户名和密码的。

    $host = getenv('HTTP_BAE_ENV_ADDR_SQL_IP');
    $port = getenv('HTTP_BAE_ENV_ADDR_SQL_PORT');
    $user = getenv('HTTP_BAE_ENV_AK');
    $pwd = getenv('HTTP_BAE_ENV_SK');

    下面这个php可以直接放到应用下调用显示,看看是否可以正确显示相关信息,其中dbname需要修改为应用下授权的数据库名称。

    <?php
    /*数据库名称*/
    $dbname = 'RKpKDLWugItRJWDbNMhL';
    
    /*从环境变量里取出数据库连接需要的参数*/
    $host = getenv('HTTP_BAE_ENV_ADDR_SQL_IP');
    $port = getenv('HTTP_BAE_ENV_ADDR_SQL_PORT');
    $user = getenv('HTTP_BAE_ENV_AK');
    $pwd = getenv('HTTP_BAE_ENV_SK');
    echo $host. "<br>";
    echo $port. "<br>";
    echo $user. "<br>";
    echo $pwd;
    ?>

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 14:24:58

    楼上正解。是提示你的ak sk不对

    reply
    0
  • Cancelreply