windows下使用redis
- 安装redis
redis官方网站redis.cn
redis官方文档,包括redis的使用,管理等:http://www.redis.cn/documentation.html
redis的windows版有MS Open维护,代码托管在GitHub上Redis-windows下载完成后在Bin目录下可以找到exe文件 -
windows下启动Redis
- 加入上面下载的redis的目录是
F:\lmmbao\mengbao-lib\redis-2.8\bin\release\redis - 打开cmd窗口cd到上面的目录
上面的命令将启动Redis,Redis的配置都在redis.windows.conf里,具体配置参数以及其含义可以参考官方的文档>cd F:\lmmbao\mengbao-lib\redis-2.8\bin\release\redis> >redis-server redis.windows.conf - 打开另一个cmd窗口,之前的不要关掉,进入redis的目录,执行下面的命令连接redis
>redis-cli.exe -h 127.0.0.1 -p 6379 127.0.0.1:6379> - 然后就可以对redis进行操作了
127.0.0.1:6379>set name haha OK 127.0.0.1:6379>get name "haha" 127.0.0.1:6379>
- 加入上面下载的redis的目录是
-
PHP扩展Redis,PHP的第三方redis库有很多,我们这里采用的比较广泛的phpredis扩展库,该扩展用C语言编写,要使用该库需要进行编译在linux下就是生成so文件作为PHP的扩展模块,linux下的编译比较简单,使用make命令加上可选参数即可,在windows下则需要生成一个动态链接库载入到当前系统中,这个编译需要根据我们的PHP版本以及apache的编译器版本进行编译,一般有VC6,VC9,VC11三种,我们windows本地用的是VC11,需要使用VC11进行编译,对应的VS版本至少是VS2012,我们为了保证项目进度采用别人编译好的redis动态链接库.主要有两个文件
然后修改PHP.ini配置文件添加两个动态库的扩展,然后重启apache
-
PHP中使用Redis
主要参考phpredis的官方文档进行介绍,使用phpredis还是很简单的.PhpRedis将所有的Redis的操作封装成了一个Redis类,还有一个RedisException的类,当连接Redis失败则不会抛出一个RedisException对象。除了这两个类之外,还包含一些常量的定义:Redis::REDIS_STRING - String Redis::REDIS_SET - Set Redis::REDIS_LIST - List Redis::REDIS_ZSET - Sorted set Redis::REDIS_HASH - Hash Redis::REDIS_NOT_FOUND - Not found / other- 连接Redis
连接Redis有两种方式一种是普通的连接使用connection,open,一种是常连接使用pconnection,popen参数
host: 主机地址
port: 端口号,可选默认是6379
timeout:浮点型,单位是秒,可选,默认0
reserved: 预留字段,如果声明了retry_interval那么应该置为NULL$redis->connect('127.0.0.1', 6379); $redis->connect('127.0.0.1'); // port 6379 by default $redis->connect('127.0.0.1', 6379, 2.5); // 2.5 sec timeout. $redis->connect('/tmp/redis.sock'); // unix domain socket. $redis->connect('127.0.0.1', 6379, 1, NULL, 100); // 1 sec timeout, 100ms delay between reconnection attempts.pconnection,popen的参数和connection,open一样。 - 认证
auth
参数:password
返回值:true|false$redis->auth('pass');
- 连接Redis
select选择数据库
参数:dbindex数据库的索引值
返回参数:true|false
eg:$redis->select(0); $redis->set('x','42'); $redis->move('x',1); $redis->select(1); $redis->get('x');close关闭连接
关闭Redis的连接,如果是使用pconnection常连接的形式则不能使用该函数关闭连接setOption配置Redis参数
参数:name---指定配置选项名字
value---选项值
eg:$redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_NONE); // 不适用串行化数据 $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_PHP); //使用内置的串行化 $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_IGBINARY); // 使用 igBinary串行化 $redis->setOption(Redis::OPT_PREFIX, 'myAppName:'); // 使用用户自定义的key值前缀 /* Options for the SCAN family of commands, indicating whether to abstract empty results from the user. If set to SCAN_NORETRY (the default), phpredis will just issue one SCAN command at a time, sometimes returning an empty array of results. If set to SCAN_RETRY, phpredis will retry the scan command until keys come back OR Redis returns an iterator of zero */ $redis->setOption(Redis::OPT_SCAN, Redis::SCAN_NORETRY); $redis->setOption(Redis::OPT_SCAN, Redis::SCAN_RETRY);- getOption获取配置选项
参数:无
返回: 选项值
eg:$redis->getOption(Redis::OPT_SERIALIZER); // return Redis::SERIALIZER_NONE, Redis::SERIALIZER_PHP, or Redis::SERIALIZER_IGBINARY.
本文介绍了如何在Windows下安装和启动Redis,包括从官方网站下载Redis的Windows版本,通过CMD启动Redis服务,以及配置和连接Redis的方法。此外,还讲解了使用PHP的Redis扩展库进行连接,包括配置动态链接库、修改PHP配置文件,并展示了如何通过PHP类进行Redis的基本操作。
1224

被折叠的 条评论
为什么被折叠?



