更新时间:2023-11-21 gmt 08:00

通过php连接实例-凯发k8国际娱乐官网入口

本章节主要介绍使用php访问geminidb redis实例的方法。

前提条件

  • 已成功创建geminidb redis实例,且实例状态为“正常”。
  • 已创建弹性云服务器,创建弹性云服务器的方法,请参见《弹性云服务器快速入门》中“”章节。
  • 弹性云服务器上已经安装gcc等编译工具。
  • 创建的弹性云服务器geminidb redis实例要保证区域、可用区、vpc和安全组一致。

操作步骤

  1. 获取geminidb redis实例的负载均衡地址和端口。
    • 负载均衡地址的查看方法请参见。
    • 端口信息的获取方法请参见。
  2. 登录弹性云服务器,具体操作请参见《弹性云服务器快速入门》中“”。
  3. 安装php开发包与命令行工具。

    执行如下命令,使用yum方式直接安装。

    yum install php-devel php-common php-cli

    以centos(redhat系列)为例,如果是ubuntu(debian系列),则需要使用其对应的安装命令。

  4. 安装完后可查看版本号,确认成功安装。

    php --version

  5. 安装redis的php客户端。
    1. 下载phpredis源文件。

      wget http://pecl.php.net/get/redis-4.1.0rc3.tgz

      以上是当前最新版本,也可以通过下载其他版本的phpredis客户端。

    2. 解压phpredis源文件包。

      tar -zxvf redis-4.1.0rc3.tgz

      cd redis-4.1.0rc3

    3. 编译前先执行扩展命令。

      phpize

    4. 配置php-config文件。

      ./configure --with-php-config=/usr/bin/php-config

      不同的操作系统,安装php的方式不同,该配置文件位置可能不同。建议在配置前,先确认该文件的目录,命令如下:find / -name php.ini

    5. 编译和安装phpredis客户端。

      make && make install

    6. 安装完后在php.ini文件中增加extension配置项,用于增加redis模块的引用配置。

      使用如下命令,查找到php.ini文件:

      vim /usr/local/php/etc/php.ini

      在php.ini文件中,增加如下配置项:

      extension = "/usr/lib64/php/modules/redis.so"

      php.ini和redis.so两个文件的目录可能不同,可通过如下命令先查找确认。

      find / -name php.ini

      find / -name redis.so

    7. 保存退出后确认扩展生效。

      php -m |grep redis

      如果以上命令返回了redis,表示php redis客户端环境搭建好了。

  6. 使用phpredis客户端连接geminidb redis实例。
    1. 编写测试代码redis.php。
      • 使用php单机sdk连接geminidb redis集群
        connect($redis_host, $redis_port) == false) {
               die($redis->getlasterror());
            }
            if ($redis->auth($user_pwd) == false) {
                die($redis->getlasterror());
            }
            if ($redis->set("key", "php test ok!") == false) {
                die($redis->getlasterror());
            }
            $value = $redis->get("key");
            echo $value;
            $redis->close();
        ?>
      • 使用php集群sdk连接geminidb redis集群
        set("key", "php test ok!") == false) {
                    die($redis->getlasterror());
                }
                $value = $redis->get("key");
                echo $value;
                $redis->close();
            ?>
    2. 执行redis.php,确认结果正常。
分享:
网站地图