phpredis
介绍使用同一VPC内弹性云主机ECS上的phpredis连接Redis的方法。更多的客户端的使用方法请参考Redis客户端。
说明本章节操作,仅适用于连接单机、主备、Proxy集群实例,如果是使用phpredis客户端连接Cluster集群,请参考phpredis客户端使用说明
前提条件
- 已成功申请Redis实例,且状态为“运行中”。
- 已创建弹性云主机,创建弹性云主机的方法,请参见《弹性云主机用户指南》。
- 如果弹性云主机为Linux系统,该弹性云主机必须已经安装gcc编译环境。
操作步骤
步骤 1 查看并获取待连接Redis实例的IP地址和端口。
具体步骤请参见查看实例信息。
步骤 2 登录弹性云主机。
本章节以弹性云主机操作系统为centos为例介绍通过phpredis redis客户端连接实例。
步骤 3 安装gcc-c++及make等编译组件。
yum install gcc-c++ make
步骤 4 安装php开发包与命令行工具。
执行如下命令,使用yum方式直接安装。
yum install php-devel php-common php-cli
安装完后可查看版本号,确认成功安装:
php --version
步骤 5 安装php redis客户端。
- 下载php redis源文件。
wget http://pecl.php.net/get/redis-5.3.7.tgz
仅以该版本作为示例,您还可以去redis官网或者php官网下载其他版本的phpredis客户端。
2.解压php redis源文件包。
tar -zxvf redis-5.3.7.tgz
cd redis-5.3.7
3.编译前先执行扩展命令。
phpize
4.配置php-config文件。
./configure --with-php-config=/usr/bin/php-config
不同操作系统,不同的php安装方式,该文件位置不一样。建议在配置前,先查找和确认该文件的目录:
find / -name php-config
5.编译和安装php redis客户端。
make && make install
6。安装完后在php.ini文件中增加extension配置项,用于增加redis模块的引用配置。
vim /etc/php.ini
增加如下配置项:
extension = "/usr/lib64/php/modules/redis.so"
说明php.ini和redis.so两个文件的目录可能不同,需要先查找确认。
例如:find / -name php.ini
7.保存退出后确认扩展生效。
php -m |grep redis
如果以上命令返回了redis,表示php redis客户端环境搭建好了。
步骤 6 使用php redis客户端连接Redis实例。
- 编辑一个redis.php文件:
<?php $redis_host = "{redis_instance_address}"; $redis_port = 6379; $user_pwd = "{password}"; $redis = new Redis(); if ($redis->connect($redis_host, $redis_port) == false) { die($redis->getLastError()); } if ($redis->auth($user_pwd) == false) { die($redis->getLastError()); } if ($redis->set("welcome", "Hello, DCS for Redis!") == false) { die($redis->getLastError()); } $value = $redis->get("welcome"); echo $value; $redis->close(); ?>
其中, {redis_instance_address} 为Redis实例的IP地址,6379为Redis实例的端口。IP地址和端口获取见步骤1,请按实际情况修改后执行。 {password} 为创建Redis实例时自定义的密码,请按实际情况修改后执行。如果免密访问,请将密码认证的if语句屏蔽。
2.执行 php redis.php ,连接Redis实例。
Predis
介绍使用同一VPC内弹性云主机ECS上的Predis连接Redis的方法。更多的客户端的使用方法请参考Redis客户端。
前提条件
- 已成功申请Redis实例,且状态为“运行中”。
- 已创建弹性云主机,创建弹性云主机的方法,请参见《弹性云主机用户指南》。
- 如果弹性云主机为Linux系统,该弹性云主机必须已经安装php编译环境。
操作步骤
步骤 1 查看并获取待连接Redis实例的IP地址和端口。
具体步骤请参见查看实例信息。
步骤 2 登录弹性云主机。
步骤 3 安装php开发包与命令行工具。执行如下命令,使用yum方式直接安装。
yum install php-devel php-common php-cli
步骤 4 安装完后可查看版本号,确认成功安装。
php --version
步骤 5 将Predis包下载到/usr/share/php目录下。
- 通过以下命令下载Predis源文件。
wget https://github.com/predis/predis/archive/refs/tags/v1.1.10.tar.gz
说明仅以该版本作为示例,您还可以去redis官网或者php官网下载其他版本的predis客户端。
- 解压Predis源文件包。
tar -zxvf predis-1.1.10.tar.gz
- 将解压好的predis目录重命名为“predis”,并移动到/usr/share/php/下。
mv predis-1.1.10 predis
步骤 6 编辑一个文件连接redis。
- 使用redis.php文件连接Redis单机/主备/Proxy集群示例:
<?php require 'predis/autoload.php'; Predis\Autoloader::register(); $client = new Predis\Client([ 'scheme' => 'tcp' , 'host' => '{redis_instance_address}' , 'port' => {port} , 'password' => '{password}' ]); $client->set('foo', 'bar'); $value = $client->get('foo'); echo $value; ?>
- 使用redis-cluster.php连接Redis Cluster集群代码示例:
<?php
require 'predis/autoload.php';
$servers = array(
'tcp://{redis_instance_address}:{port}'
);
$options = array('cluster' => 'redis');
$client = new Predis\Client($servers, $options);
$client->set('foo', 'bar');
$value = $client->get('foo');
echo $value;
?>
其中, {redis_instance_address} 为Redis实例真实的IP地址, {port} 为Redis实例真实的端口。IP地址和端口获取见步骤1,请按实际情况修改后执行。 {password} 为创建Redis实例时自定义的密码,请按实际情况修改后执行。如果免密访问,请将password行去掉。
步骤 7 执行php redis.php连接Redis实例。