首先安装一个Centos7,安装过程可以参考此文章,安装过程中有个安装基本开发环境选项,最好勾选(这样之后安装redis所需要的一些环境就不用自己安装了),如果你没有选择也不用怕,后边会说遇到的问题。
安装
1、 接下来开始安装redis,可以用xftp将redis上传到Centos7,也可以直接在Centos7下载redis。下面是详细脚本。
[kongl@bogon ~]$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz
我把压缩包放在work目录下,所以
[kongl@bogon ~]$ cd work
[kongl@localhost work]$ tar -zxvf redis-3.2.8.tar.gz
之后该压缩包解压成功,ll或者ls
可以看到如下信息
[kongl@localhost work]$ ll
总用量 1516
drwxrwxr-x. 6 kongl kongl 4096 2月 12 23:14 redis-3.2.8
-rw-rw-r--. 1 kongl kongl 1547237 4月 21 15:57 redis-3.2.8.tar.gz
如果一开始你安装Centos7时,勾选了基本开发环境选项。这里就可以进行下一步
[kongl@localhost work]$ cd redis-3.2.8
[kongl@localhost redis-3.2.8]$ make&&make install
然后会编译一下文件,如果一开始你安装Centos7时,没有勾选了基本开发环境选项,这里一般会报错误。
2、然我们说一下错误信息。第一个错误:没有gcc-c++环境,解决办法就是安装这个环境
yum install gcc-c++
第二个错误:zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory,这个错误解决方法如下
[kongl@localhost redis-3.2.8]$ make MALLOC=libc
[kongl@localhost redis-3.2.8]$ make install
第个三错误: need tcl 8.5 or newer in order to run the Redis test
make: * [test] Error 1,需要安装tcl8.5,解决办法还是安装这个插件
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
cd /usr/local/tcl8.6.1/unix/
./configure
<!--编译软件包-->
make
<!--安装软件包-->
make install
以上三了问题,如果一开始安装基本环境就不会遇到。
3、如果第一步正确执行没有遇到问题那么接下来
[kongl@localhost redis-3.2.8]$ cd utils/
[kongl@localhost utils]$ ./install_server.sh
这一步进行一些初始化,一般默认,所以一直回车即可。
最后可以查看一下版本
[kongl@localhost ~]$ cd /usr/local/bin
[kongl@localhost bin]$ redis-cli --version
redis-cli 3.2.8
[kongl@localhost bin]$ ll
总用量 15060
-rwxr-xr-x. 1 root root 2431816 4月 21 16:09 redis-benchmark
-rwxr-xr-x. 1 root root 25176 4月 21 16:09 redis-check-aof
-rwxr-xr-x. 1 root root 5181704 4月 21 16:09 redis-check-rdb
-rwxr-xr-x. 1 root root 2584680 4月 21 16:09 redis-cli
lrwxrwxrwx. 1 root root 12 4月 21 16:09 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 5181704 4月 21 16:09 redis-server
到此结束
部署以及开机自启动
1、如果按照上边安装的话,部署就变得简单很多。因为此时的redis服务已经启动。可以用下面的命令简单测试一下
[kongl@localhost ~]$ cd /usr/local/bin
[kongl@localhost bin]$ redis-cli
127.0.0.1:6379> set name kongl
OK
127.0.0.1:6379> get name
"kongl"
127.0.0.1:6379> exit
2、开机自启动,这里也是很简单的。将启动脚本复制到/etc/init.d目录下,本例将启动脚本命名为redisd(通常都以d结尾表示是后台自启动服务),如下
[root@localhost utils]#cp redis_init_script /etc/init.d/redisd
设置一下开机自启动
此处直接配置开启自启动 chkconfig redisd on
将报错误: service redisd does not support chkconfig
参照 此篇文章 ,在启动脚本开头添加如下两行注释以修改其运行级别:
#!/bin/sh
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
到此设置完毕,执行下边脚本,然后重启电脑测试一下
[kongl@bogon ~]$ chkconfig redisd on
一开始遇到各种问题,慢慢解决、克服,其中参考了很多网友的blog,所以我也把我的分享给大家,同时自己做个笔记。这个过程中有一些权限问题(切换到root权限去做一些操作),这里没有说明,大伙注意一下。如果有错误,或者不懂的大家可以一起讨论。本人菜鸟一个,希望大神多多指教。