关于项目涉及Redis的安装与部署
Redis的安装和配置
第一步:安装
- 可以前往官网下载最新的Redis,官网给出了三个不同的版本。其中我们只需要选择中间的稳定版本,本次项目使用的是redis-5.0.8的版本。Redis官网下载链接
- 使用命令对压缩包进行解压
tar -xvf redis-5.0.8.tar
- 使用mv命令将解压后的redis文件移动到/usr/local/文件夹下
mv redis-5.0.8 /usr/local/
如果在移动中出现权限问题
- cd命令切换至/usr/local/文件夹下的redis-5.0.8文件中 如下
cd /usr/local/redis-5.0.8
- 进行编译
sudo make test
在编译的过程中会出现报错 如下图,
这并不影响后面的安装,可以选择忽视直接安装。一般选择在安装完成后在进行二次编译检测,此时不会报错。
- 进行安装
sudo make install
- 启动Redis
redis-server
启动过程中可能会出现报错,那是因为redis的默认端口被占用,可以按照下面的步骤进行解决。
- 使用命令找到占用端口号的进程:
ps -ef | grep -i redis
- 得到类似如下的信息:
501 807 1 0 3:50下午 ?? 0:03.91 redis-server *:6379
501 5774 959 0 5:14下午 ttys000 0:00.00 grep -i redis
- kill该进程:
kill -9 807
- 重启redis
redis-server
第二步:配置
- 在redis目录下建立bin,etc,db三个目录:
sudo mkdir bin etc db
- 把redis/src目录下的 mkreleasehdr.sh,redis-benchmark, redis-check-rdb, redis-cli, redis-server拷贝到bin目录
sudo cp mkreleasehdr.sh redis-benchmark redis-check-rdb redis-cli redis-server ../bin
- 一般为了不破坏它的安装文件,所以我们将/usr/local/redis目录下的redis.conf拷贝一份到etc目录下
sudo cp redis.conf /usr/local/redis-5.0.8/etc
- 修改etc文件底下的redis.conf文件
vim redis.conf
其中关于redis.conf文件中的内容的具体解释可以参考这篇文章redis.conf配置文件的解读
ps:在使用vim编辑文本命令中,可能会出现权限问题,可以按照以下步骤解决
- 通常的解决方案是 :q! 先强行退出编辑文本
- 退出后,在命令行里输和:sudo !!
- 上述2步骤后会直接跳转到之前需要被编辑的文档
- 再:/wq,就可以正常退出
#修改为守护模式
daemonize yes
#设置进程锁文件
pidfile /Users/hu/Downloads/redis/redis.pid #根据自己的路径进行相关配置
#端口
port 6379
#客户端超时时间
timeout 300
#日志级别
loglevel debug
#日志文件位置
logfile /Users/hu/Downloads/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 /Users/hu/Downloads/redis/db/ #根据自己的路径进行相关配置
#指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能
#会在断电时导致一段时间内的数据丢失。因为 redis本身同步数据文件是按上面save条件来同步的,所以有
#的数据会在一段时间内只存在于内存中
appendonly no
#指定更新日志条件,共有3个可选值:
#no:表示等操作系统进行数据缓存同步到磁盘(快)
#always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
#everysec:表示每秒同步一次(折衷,默认值)
appendfsync everysec
至此安装与配置就完成了