Redis的安装与使用
Redis安装
我已经打包上传了在这里
Redis下载
Redis官方下载地址进行安装
进入所下载的redis压缩包所在的文件
tar -zxvf redis-2.6.13.tar.gz解压后进入
cd redis-2.6.13然后
make查看文件发现多了一个
src文件夹,进入src文件中redis-server:Redis服务器的daemon启动程序 redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作创建一个用来存放redis工作目录,并复制redis运行文件
mkdir /usr/local/redis cp redis-cli redis-server /uer/local/redis复制redis.conf到redis工作目录
cp redis.conf /usr/local/redis进入redis工作目录开启redis
./redis-server修改redis.conf
daemonize yes #即可后台启动redis ./redis-server redis.conf #查看服务是否开启 ps -A | grep redis #进入客户端 ./redis-cli
Redis使用
key的操作
| 命令 | 描述 |
|---|---|
| exists key | 测试指定key是否存在 |
| del key1 key2 | 删除指定key |
| type key | 返回给定key的value 类型 |
| keys pattern | 查找所有符合给定模式( pattern)的 key |
| randomkey | 当前数据库中随机返回一个 key 。 |
| keyrename(oldname, newname) | 重命名key |
| dbsize | 返回当前数据库中key的数目 |
| expire | 设定一个key的活动时间(s) |
| ttl | 获得一个key的活动时间 |
| select(index) | 按索引查询 |
| move(key, dbindex) | 移动当前数据库中的key到dbindex数据库 |
| flushdb | 删除当前选择数据库中的所有key |
String 的操作
| 命令 | 描述 |
|---|---|
| set(key, value) | 给数据库中名称为key的string赋予值value |
| get(key) | 返回数据库中名称为key的string的value |
| getset(key, value) | 给名称为key的string赋予上一次的value |
| mget(key1, key2,…, key N) | 返回库中多个string的value |
| setnx(key, value) | 添加string,名称为key,值为value |
| setex(key, time, value) | 向库中添加string,设定过期时间time |
| mset(key N, value N) | 批量设置多个string的值 |
| msetnx(key N, value N) | 如果所有名称为key i的string都不存在 |
| incr(key) | 名称为key的string增1操作 |
| incrby(key, integer) | 名称为key的string增加integer |
| decr(key) | 名称为key的string减1操作 |
| decrby(key, integer) | 名称为key的string减少integer |
| append(key, value) | 名称为key的string的值附加value |
| substr(key, start, end) | 返回名称为key的string的value的子串 |
对List操作的命令
| 命令 | 描述 |
|---|---|
| rpush(key, value) | 在名称为key的list尾添加一个值为value的元素 |
| lpush(key, value) | 在名称为key的list头添加一个值为value的 元素 |
| llen(key) | 返回名称为key的list的长度 |
| lrange(key, start, end) | 返回名称为key的list中start至end之间的元素 |
| ltrim(key, start, end) | 截取名称为key的list |
| lindex(key, index) | 返回名称为key的list中index位置的元素 |
| lset(key, index, value) | 给名称为key的list中index位置的元素赋值 |
| lrem(key, count, value) | 删除count个key的list中值为value的元素 |
| lpop(key) | 返回并删除名称为key的list中的首元素 |
| rpop(key) | 返回并删除名称为key的list中的尾元素 |
| blpop(key1, key2,… key N, timeout) | lpop命令的block版本。 |
| brpop(key1, key2,… key N, timeout) | rpop的block版本。 |
| rpoplpush(srckey, dstkey) | 返回并删除名称为srckey的list的尾元素,并将该元素添加到名称为dstkey的list的头部 |
对Set操作的命令
| 命令 | 描述 |
|---|---|
| sadd(key, member) | 向名称为key的set中添加元素member |
| srem(key, member) | 删除名称为key的set中的元素member |
| spop(key) | 随机返回并删除名称为key的set中一个元素 |
| smove(srckey, dstkey, member) | 移到集合元素 |
| scard(key) | 返回名称为key的set的基数 |
| sismember(key, member) | member是否是名称为key的set的元素 |
| sinter(key1, key2,…key N) | 求交集 |
| sinterstore(dstkey, (keys)) | 求交集并将交集保存到dstkey的集合 |
| sunion(key1, (keys)) | 求并集 |
| sunionstore(dstkey, (keys)) | 求并集并将并集保存到dstkey的集合 |
| sdiff(key1, (keys)) | 求差集 |
| sdiffstore(dstkey, (keys)) | 求差集并将差集保存到dstkey的集合 |
| smembers(key) | 返回名称为key的set的所有元素 |
| srandmember(key) | 随机返回名称为key的set的一个元素 |
对Hash操作的命令
| 命令 | 描述 |
|---|---|
| hset(key, field, value) | 向名称为key的hash中添加元素field |
| hget(key, field) | 返回名称为key的hash中field对应的value |
| hmget(key, (fields)) | 返回名称为key的hash中field i对应的value |
| hmset(key, (fields)) | 向名称为key的hash中添加元素field |
| hincrby(key, field, integer) | 将名称为key的hash中field的value增加integer |
| hexists(key, field) | 名称为key的hash中是否存在键为field的域 |
| hdel(key, field) | 删除名称为key的hash中键为field的域 |
| hlen(key) | 返回名称为key的hash中元素个数 |
| hkeys(key) | 返回名称为key的hash中所有键 |
| hvals(key) | 返回名称为key的hash中所有键对应的value |
| hgetall(key) | 返回名称为key的hash中所有的键(field)及其对应的value |
Redis的主从模式
对于Redis的主从模式开启十分的简单
修改redis.conf
#slaveof <主机ip><主机端口>
slaveof 192.168.20.174 6379
重启服务器
root@Stark:~# ps -A | grep redis
2630 ? 00:00:09 redis-server
4775 pts/11 00:00:00 redis-cli
root@Stark:~# kill -9 2630
root@Stark:/usr/local/redis# ./redis-server redis.conf
#重启服务器的时候要带上配置文件
php与redis结合
进入php的安装目录找到可执行文件phpize
通过绝对路径的方式在phpredis的解压目录中运行
/usr/local/php/bin/phpize
如果提示缺少依赖autoconf安装即可进入解压目录
./configure && make && make install
再次执行之前一步的指令,没有错误提示代表执行成功
在phpredis解压目录中
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
在php.ini中开启redis扩展
extension=redis.so
重启apache或者nginx服务器即可。
测试:
<?php
$redis = new Redis();
$redis->connect('127.0.0.1',6379);
$redis->set('foo','This Is Test String! ');
echo $redis->get('foo');
?>
本文详细介绍Redis的安装步骤及常用操作命令,包括key、string、list、set和hash等数据类型的管理,同时介绍了如何配置主从模式及PHP与Redis的集成。
1960

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



