Redis的学习链接
1.Windows下安装Redis及php的redis拓展教程
2.PHP操作readis的扩展包
3.http://pecl.php.net/package/redis
4.Readis For Windows安装及密码、IP限制
5.客户端使用教程
- 常用的redis服务命令。
卸载服务:redis-server --service-uninstall
开启服务:redis-server --service-start
停止服务:redis-server --service-stop - 设置windows下的Redis服务 (解决启动redis,关闭cmd窗口,redis就会消失。)
redis-server --service-install redis.windows-service.conf --loglevel verbose
- windows命令窗口删除服务的功能,就是在命令窗口输入 sc delete 服务名称
一、Windows下安装Redis及php的redis拓展教程
一.安装前必读
Windows 64位操作系统 准备事项: redis安装包 PHP扩展包
注意事项:
1.在windows下安装redis后扩展选择要根据windows下redis的版本进行, 如redis3.2的版本,就找redis3.2对应的php_redis.dll,所以推荐大家在选择redis版本时要注意对应php_redis拓展也能找到!
2.先查看电脑phpinfo信息,要根据信息进行选择安装扩展包
所以这里我选64位的nts版本的下载
3.网上的windows下安装redis及PHP拓展教程大多是redis2.x版本的,对于想安装高版本可能不适用,尽量别安装太高版本;
来看下windows下redis的版本,git地址https://github.com/MSOpenTech/redis/releases
可下载的php_redis.dll版本,网站链接https://pecl.php.net/package/redis
推荐大家在选择redis版本时要注意对应php_redis拓展也能找到!
####二.安装Redis####
1.下载redis压缩包,git下载地址https://github.com/MSOpenTech/redis/releases
2.下载后解压到redis文件夹,以下为解压后的文件。
redis-cli.exe # 客户端
redis-server.exe # 服务器
redis.windows.conf # 配置文件
redis.windows.server.conf # 密码设置配置文件
3.redis安装测试
windows 运行(快捷键:windows键+R键),输入【cmd】命令,进入DOC操作系统窗口;
进入redis安装目录使用命令
开始->附件->右击cmd->以管理员身份进入。
D>redis>redis-server.exe redis.windows.conf
关闭redis用ctrl+c即可。
设置密码了用 auth "密码"即可
启动redis 服务,此窗口无需关闭,关闭窗口就停止redis服务了,启动成功如下图:
4.简单的操作(需要redis客户端命令来连接服务器端)
前面的cmd窗口不要关闭,在重新打开个cmd窗口,开始->附件->右击cmd->以管理员省份进入。
D:回车->cd redis 回车->dir 回车->redis-cli.exe –h 192.168.1.107 –p 6379 回车。
可以通过ipconfig来查询本机IP地址。
####三.安装php的redis拓展####
1.下载php_redis.dll,下载地址https://pecl.php.net/package/redis
我选择的是版本3.0.0,对应redis安装版本3.0的
在新打开的窗口选择对应的下载,先查看phpinfo信息
所以这里我选64位的nts版本的下载
2.找到php安装目录将下载的包里面的这两个文件放到ext文件夹里(这里是四个文件)
3.修改php.ini添加
extension=php_xsl.dll
extension=php_igbinary.dll
extension=php_redis.dll
extension=php_mongodb.dll
开启redis拓展,保存并重启Nginx或Apache服务器
4.验证是否开启redis拓展
再次查看phpinfo信息,搜索redis,出现下图即表示成功开启。
5.php连接并测试redis数据库
新建test.php
<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379); //连接Redis 默认6379
$redis->auth('12345'); //密码验证
$redis->set( "testKey" , "Hello Redis"); //设置测试key
echo $redis->get("testKey");//输出value
?>
输出 Hello Redis
至此您也全部完成Windows下Redis及php的redis拓展的安装!
windows系统上安装Redis,并且设置Redis密码
打开redis.windows-service.conf文件,找到修改密码这一段如图:
在requirepass foobared 下面加上这么一行:
requirepass 密码
重新启动Redis,密码生效
5.设置Redis服务
虽然启动了redis,但是只要一关闭cmd窗口,redis就会消失。所以要把redis设置成windows下的服务。
首先发现是没用这个Redis服务的。
添加服务: redis-server.exe --service-install redis.windows-service.conf
在命令行例输入
![在这里插入图片描述](https://img-blog.csdnimg.cn/2019090415050195.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3p1amkzNjY=,size_16,color_FFFFFF,t_70
开启服务:redis-server.exe--service-start
停止服务:redis-server.exe--service-stop
卸载服务:redis-server.exe--service-uninstall
###二、Redis的应用命令###
1、启动Redis
(1)查询Redis是否启动:ps -ef|grep redis。
(2)启动Redis:redis-server redis.conf
(3)连接:redis-cli -p 6379。
(4)测试,发送ping,如果连接正常就返回一个 PONG ,否则返回一个连接错误。
2、字符串(String)操作:
(1)set/get/del/append/strlen:添加、获取、删除、拼接、长度;
(2)Incr/decr/incrby/decrby,一定要是数字才能进行加减;
(3)getrange:获取指定区间范围内的值,类似between...and;
(4)setrange:设置指定区间范围内的值,格式setrange key 值;
(5)setex:设置带过期时间的key,动态设置。setex 键 秒值 真实值;
(6)setnx:只有在 key 不存在时设置 key 的值。setnx 键 真实值;
(7)mset/mget/msetnx:同时设置、获取多个值,msetnx仅当所有给定key都不存在时才生效。
(4)llen:长度;(5)lrem key 删除N个value;(6)ltrim key 开始index 结束index,截取指定范围的值后再赋值给key;
(8)lset key index value:给key中下标是index的赋值为value。(9)linsert key before/after 值1 值2:在key列表中,在值1的前面/后面插入值2。
4、集合(Set)操作:
(1)sadd/smembers/sismember:添加(不允许重复)、查看、判断元素是否是集合中成
(2)scard,获取集合里面的元素个数;
(3)srem key value:删除集合中元素;(4)srandmember key:某个整数(随机出key个数);
(5)spop key:随机一个出栈;
(6)smove key1 key2 在key1里某个值:将key1里的某个值赋给key2;
(7)sdiff/sinter/sunion:差集(在第一个set里面而不在后面任何一个set里面的项)、交集、并集;
5、哈希(Hash)操作,KV键值对模式不变,但是V也是一个键值对。
(1)hset/hget/hmset/hmget/hgetall/hdel;
(2)hlen;
(3)hexists key 在key里面的某个值的key:判断key中是否有某个值;
(4)hkeys/hvals:获取key中的键/值;(5)hincrby/hincrbyfloat key 在key里面的某个值的key num:key中的某个键的值加num(整数型、浮点型);
(6)hsetnx:不存在赋值,存在了无效
6、有序集合Zset(sorted set)操作,在set基础上加入了一个score值。之前set是k1 v1 v2 v3,现在zset则是k1 score1 v1 score2 v2 score3 v3。
(1)zadd/zrange/zrevrange:添加、查看、反序查看。当zrange最后带入withscore时,表示所有都显示;
(2)zrangebyscore key 开始score 结束score:查询score范围内的值,当范围score带“(”时,表示不等于;
(3)zrem key 某score下对应的value值:删除元素;
(4)zcard key/zcount key score区间:获取个数/分数区间内的个数;
(5)zrank key values:获取values值得下标。
(6)zscore key 对应值:获得分数;
(7)zrevrank key values值:逆序获得下标值;
(8)zrevrangebyscore key 结束score 开始score:反序查询score范围内的值;
7、其他:
(1)select:命令切换数据库;
(2)dbsize:查看当前数据库的key的数量;
(3)flushdb:清空当前库;
(4)Flushall:通杀全部库;
(5)keys *:本库的所以键;
(6)exists key的名字,判断某个key是否存在;
(7)move key db:移动key到db库;
(8)expire key 秒钟:为给定的key设置过期时间;
(9)ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期;
(10)persist key:移除key的过期时间,key将持久保存;
(11)type key 查看你的key是什么类型;
(12)del key:删除key;(13)dump key:序列化给定的key,并返回被序列化的值;
感谢阅读~