一、安装redis
第一步:下载redis安装包
wget http://download.redis.io/releases/redis-4.0.6.tar.gz
[root@iZwz991stxdwj560bfmadtZ local]#wgethttp://download.redis.io/releases/redis-4.0.6.tar.gz--2017-12-1312:35:12-- http://download.redis.io/releases/redis-4.0.6.tar.gzResolving download.redis.io (download.redis.io)...109.74.203.151Connecting to download.redis.io (download.redis.io)|109.74.203.151|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1723533(1.6M) [application/x-gzip]
Saving to: ‘redis-4.0.6.tar.gz’100%[==========================================================================================================>]1,723,533608KB/sin2.8s 2017-12-1312:35:15(608KB/s) - ‘redis-4.0.6.tar.gz’ saved [1723533/1723533]
第二步:解压压缩包
[root@iZwz991stxdwj560bfmadtZ local]#tar -zxvf redis-4.0.6.tar.gz
第三步:yum安装gcc依赖
[root@iZwz991stxdwj560bfmadtZ local]#yum install gcc
遇到选择,输入y即可。
第四步:跳转到redis解压目录下
[root@iZwz991stxdwj560bfmadtZ local]# cd redis-4.0.6
第五步:编译安装
[root@iZwz991stxdwj560bfmadtZ redis-4.0.6] make MALLOC=libc
将/usr/local/redis-4.0.6/src目录下的文件加到/usr/local/bin目录
[root@iZwz991stxdwj560bfmadtZ redis-4.0.6]# cd src && make install
CC Makefile.dep
Hint: It's a good idea to run 'maketest' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
二、启动redis的三种方式
先切换到redis src目录下
[root@iZwz991stxdwj560bfmadtZ redis-4.0.6] cd src
1、直接启动redis
[root@iZwz991stxdwj560bfmadtZ src] ./redis-server
18685:C13Dec12:56:12.507 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo18685:C13Dec12:56:12.507# Redis version=4.0.6, bits=64, commit=00000000, modified=0, pid=18685, just started18685:C13Dec12:56:12.507# Warning: no configfilespecified, using the default config. In order to specify a configfileuse ./redis-server /path/to/redis.conf
_._
_.-``__''-._
_.-`` `. `_.''-._ Redis4.0.6(00000000/0)64 bit
.-`` .-```. ```\/ _.,_''-._
( ' , .-` | `, ) Running in standalone mode|`-._`-...-` __...-.``-._|'` _.-'| Port:6379| `-._ `._ / _.-' | PID: 18685`-._ `-._ `-./ _.-' _.-'|`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-'| http://redis.io `-._ `-._`-.__.-'_.-'_.-'|`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-'|
`-._ `-._`-.__.-'_.-'_.-'`-._ `-.__.-' _.-'
`-._ _.-'`-.__.-'18685:M13Dec12:56:12.508# WARNING: The TCP backlog setting of511cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of128.18685:M13Dec12:56:12.508 # Server initialized18685:M13Dec12:56:12.508# WARNING overcommit_memory is set to0! Background save may fail under low memory condition. To fix this issue add'vm.overcommit_memory = 1'to /etc/sysctl.conf andthenreboot or run the command'sysctl vm.overcommit_memory=1'for this to take effect.18685:M13Dec12:56:12.508# WARNING you have Transparent Huge Pages (THP) support enabledinyour kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command'echo never > /sys/kernel/mm/transparent_hugepage/enabled'as root, and add it to your /etc/rc.localin order to retain the setting after a reboot. Redis must be restarted after THP is disabled.18685:M13Dec12:56:12.508* Ready to accept connections
如上图:redis启动成功,但是这种启动方式需要一直打开窗口,不能进行其他操作,不太方便。
按 ctrl + c可以关闭窗口。
2、以后台进程方式启动redis
第一步:修改redis.conf文件 ### /home/admin/soft/redis-4.0.6
将 daemonize no 修改为 daemonize yes
第二步:指定redis.conf文件启动 ### ./redis-server /home/admin/soft/redis-4.0.6/redis.conf
[root@iZwz991stxdwj560bfmadtZ src] ./redis-server /usr/local/redis-4.0.6/redis.conf
18713:C13Dec13:07:41.109 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
18713:C13Dec13:07:41.109# Redis version=4.0.6, bits=64, commit=00000000, modified=0, pid=18713, just started
18713:C13Dec13:07:41.109# Configuration loaded
第三步:关闭redis进程
首先使用ps -aux | grep redis查看redis进程
[root@iZwz991stxdwj560bfmadtZ src] ps-aux |grep redis
root 187140.00.11417522008? Ssl13:070:00./redis-server127.0.0.1:6379
root 187190.00.0112644968pts/0R+13:090:00grep--color=auto redis
使用kill命令杀死进程
[root@iZwz991stxdwj560bfmadtZ src] kill 18714
3、设置redis开机自启动
1、在/etc目录下新建redis目录 ### cd /etc/
[root@iZwz991stxdwj560bfmadtZ etc]# sudo mkdir redis
2、将/usr/local/redis-4.0.6/redis.conf 文件复制一份到/etc/redis目录下,并命名为6379.conf
[root@iZwz991stxdwj560bfmadtZ redis]# sudo cp /home/admin/soft/redis-4.0.6/redis.conf /etc/redis/6379.conf
3、将redis的启动脚本复制一份放到/etc/init.d目录下
[root@iZwz991stxdwj560bfmadtZ init.d]
sudo cp /home/admin/soft/redis-4.0.6/utils/redis_init_script /etc/init.d/redisd
4、设置redis开机自启动
先切换到/etc/init.d目录下
然后执行自启命令
[root@iZwz991stxdwj560bfmadtZ init.d] chkconfig redisd on
service redisd does not support chkconfig
看结果是redisd不支持chkconfig
解决方法:
使用vim编辑redisd文件,在第一行加入如下两行注释,保存退出 ### sudo vim redisd
# chkconfig:23459010
# description: Redis is a persistent key-value database
注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
再次执行开机自启命令,成功 ### sudo chkconfig redisd on
[root@iZwz991stxdwj560bfmadtZ init.d]# chkconfig redisd on
现在可以直接以服务的形式启动和关闭redis了
启动:
[root@izwz991stxdwj560bfmadtz ~] service redisd start
Starting Redis server...
2288:C13Dec13:51:38.087 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
2288:C13Dec13:51:38.087 # Redis version=4.0.6, bits=64, commit=00000000, modified=0, pid=2288, just started
2288:C13Dec13:51:38.087 # Configuration loaded
关闭:
方法1:service redisd stop
[root@izwz991stxdwj560bfmadtz ~]# service redisd stop
Stopping ...
Redis stopped
方法2:redis-cli SHUTDOWN
三、参考资料
1、http://blog.csdn.net/zc474235918/article/details/50974483
2、http://blog.csdn.net/gxw19874/article/details/51992125
如果出现如下问题:
[root@iZwz991stxdwj560bfmadtZ ~]# service redisd start/var/run/redis_6379.pid exists, process is already running or crashed
可参考资料:http://blog.csdn.net/luozhonghua2014/article/details/54649295