下载安装
需要下载release版本,下载地址:
http://download.redis.io/releases/
我这里下载的是:
http://download.redis.io/releases/redis-3.2.5.tar.gz
解压到/usr/local/redis目录中,然后依次执行以下命令:
cd /usr/local/redis
make test
sudo make install
启动redis-server
如上图,redis-server启动成功,并监听6379端口。
常用命令说明
- redis-server redis服务器
- redis-cli redis客户端
- redis-benchmark redis性能测试工具
- redis-check-aof AOF文件修复工具
- redis-check-rdb RDB文件修复工具
启动和停止
服务端启动
默认启动
如上,在命令redis-server即启动redis服务端。且接受客户端连接根据设置启动
在 /usr/local/redis目录下建立bin,etc,db三个目录
把/usr/local/redis/src目录下的mkreleasehdr.sh,redis-benchmark, redis-check-rdb, redis-cli, redis-server拷贝到bin目录
在etc下,新建配置redis.conf,内容如下。
/usr/local/redis下新建日志文件log-redis.log,并修改当前用户使用权限。sudo chown -R shoren /usr/local/redis/
启动服务端:redis-server /usr/local/redis/etc/redis.conf
#修改为守护模式
daemonize yes
#设置进程锁文件
pidfile /usr/local/redis/redis.pid
#端口
port 6379
#客户端超时时间
timeout 300
#日志级别
loglevel debug
#日志文件位置
logfile /usr/local/redis/log-redis.log
#设置数据库的数量,默认数据库为16,可以使用SELECT 命令在连接上指定数据库id
databases 16
##指定在多长时间内,有多少次更新操作,就将数据同步到数据文件,可以多个条件配合
#save
#Redis默认配置文件中提供了三个条件:
save 900 1
save 300 10
save 60 10000
#指定存储至本地数据库时是否压缩数据,默认为yes,Redis采用LZF压缩,如果为了节省CPU时间,
#可以关闭该#选项,但会导致数据库文件变的巨大
rdbcompression yes
#指定本地数据库文件名
dbfilename dump.rdb
#指定本地数据库路径
dir /usr/local/redis/db/
#指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能
#会在断电时导致一段时间内的数据丢失。因为 redis本身同步数据文件是按上面save条件来同步的,所以有
#的数据会在一段时间内只存在于内存中
appendonly no
#指定更新日志条件,共有3个可选值:
#no:表示等操作系统进行数据缓存同步到磁盘(快)
#always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
#everysec:表示每秒同步一次(折衷,默认值)
appendfsync everysec
接着,可以查看日志,如下,表示启动成功:
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 3.2.5 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 14447
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
14447:M 24 Apr 17:57:33.215 # Server started, Redis version 3.2.5
14447:M 24 Apr 17:57:33.215 * The server is now ready to accept connections on port 6379
14447:M 24 Apr 17:57:33.215 - 0 clients connected (0 slaves), 956832 bytes in use
14447:M 24 Apr 17:57:38.257 - 0 clients connected (0 slaves), 956832 bytes in use
关闭服务端
- 强行关闭
强行终止redis进程可能会导致数据丢失,因为redis可能正在将内存数据同步到硬盘中。
ps axu|grep redis ## 查找redis-server的PID
kill -9 PID
- 命令关闭
向redis发送SHUTDOWN命令,即redis-cli SHUTDOWN
。Redis收到命令后,服务端会断开所有客户端的连接,然后根据配置执行持久化,最后退出。
## 启动redis-server,后台线程
AT8775:redis shoren$ redis-server /usr/local/redis/etc/redis.conf
## 启动成功
AT8775:redis shoren$ ps axu|grep redis
shoren 14948 0.0 0.0 2434840 760 s000 S+ 10:18上午 0:00.00 grep redis
shoren 14946 0.0 0.0 2452968 1492 ?? Ss 10:18上午 0:00.01 redis-server *:6379
## 关闭服务器
AT8775:redis shoren$ redis-cli shutdown
##关闭成功
AT8775:redis shoren$ ps axu|grep redis
shoren 14952 0.0 0.0 2435864 772 s000 S+ 10:19上午 0:00.01 grep redis
启动客户端
默认启动
使用命令redis-cli
启动客户端,按照默认配置连接Redis(127.0.0.1:6379)。指定地址和端口号
使用命令redis-cli -h 127.0.0.1 -p 6379
关闭客户端
交互模式使用quit
AT8775:redis shoren$ redis-cli -h 127.0.0.1 -p 6379
## 简单使用set、get命令
127.0.0.1:6379> set key value12
OK
127.0.0.1:6379> get key
"value12"
## 退出
127.0.0.1:6379> quit
AT8775:redis shoren$
接着,你就可以愉快的玩耍了。
参考资料:
mac环境下安装redis