Redis入门
下载
安装
tar -zxvf redis-6.0.1.tar.gz
#环境依赖
#redis6.0以上的版本安装前需要先升级gcc
yum install gcc-c++
make
配置文件
cd /usr/local/bin
mkdir myConfig
copy /opt/redis-6.0.1/redis.conf myConfig/
修改redis.conf的daemonize属性为yes, 使其保持后台启动
启动redis服务
redis-server myConfig/redis.conf #根据指定配置文件启动
连接测试
redis-cli -p 6379
127.0.0.1:6379> ping
PONG #redis正常
性能测试
#测试:-c 100个并发连接 -n 10万个请求
redis-benchmark -h localhost -p 6379 -c 100 -n 100000
简单使用
127.0.0.1:6379> set me pinked #设值
OK
127.0.0.1:6379> get me #取值
"pinked"
127.0.0.1:6379> select 4 #选择数据库, 默认有16个
OK
127.0.0.1:6379[4]> get me #在4号库中查不到0号库的数据
(nil)
127.0.0.1:6379[4]> select 0
OK
127.0.0.1:6379> dbsize #查看数据库大小
(integer) 1
127.0.0.1:6379> keys * #查看所有的值
1) "me"
127.0.0.1:6379> flushdb #清除该数据库, flushall: 清除所有数据库
OK
127.0.0.1:6379> del me #删除该值
(integer) 1
127.0.0.1:6379> exists me #查看该值是否存在
(integer) 1
127.0.0.1:6379> move me 4 #移动该值到另一数据库
(integer) 1
127.0.0.1:6379[4]> expire me 10 #设置该值的过期时间(秒)
(integer) 1
127.0.0.1:6379[4]> ttl me #查看该值的剩余时间(秒)
(integer) 2
###############################################################################
127.0.0.1:6379> type me #查看值的类型
string
127.0.0.1:6379> append me boom #追加字符串
(integer) 10
127.0.0.1:6379> get me
"pinkedboom"
127.0.0.1:6379> strlen me #查看字符串长度
(integer) 10
127.0.0.1:6379> set hi hello,world
OK
127.0.0.1:6379> getrange hi 6 10 #查看该值中6-10的字符
"world"
127.0.0.1:6379> set key1 abcde
OK
127.0.0.1:6379> setrange key1 1 xx #修改该值中从1开始的字符
(integer) 5
127.0.0.1:6379> get key1
"axxde"
###############################################################################
127.0.0.1:6379> setnx key1 abc #当值不存在时, 设值
(integer) 0
127.0.0.1:6379> setex me 15 pinked #设值并设置过期时间
OK
###############################################################################
127.0.0.1:6379> mset key2 bbb key3 ccc key4 ddd #设多个值
OK
127.0.0.1:6379> mget key2 key3 #取多个值
1) "bbb"
2) "ccc"
127.0.0.1:6379> msetnx key4 ddd key5 eee #当多个值不存在时, 设多个值(原子性)
(integer) 0
127.0.0.1:6379> getset key2 BBBB #取值并设新值
"bbb"
###############################################################################
127.0.0.1:6379> incr views #i++
(integer) 3
127.0.0.1:6379> decr views #i--
(integer) 2
127.0.0.1:6379> incrby views 10 #i+10
(integer) 12
###############################################################################
#设置值为对象
127.0.0.1:6379> set user:1 {name:zhangsan,age:7} #json格式
OK
127.0.0.1:6379> mset user:2:name lisi user:2:age 8 #以user:{id}:{field}作为key
OK