扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
############################
创新互联公司主要从事成都网站设计、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务阿城,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575基础环境
OS: centos 6.6
DB: redis 3.0.7
#############################
1.下载源码包,稳定版本
http://redis.io/ -->Download it -->download 3.0.7.
2.上传到服务器/usr/local目录下,解压缩
#cd /usr/local
# tar -zxvf redis-3.0.7.tar.gz
3.编译
# cd redis-3.0.7
# make
#make test --可以省略
4.安装
# make install
5.安装数据库设置,可以设置不同端口,多个实例
# ./utils/install_server.sh --可以运行多次
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379]
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf]
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log]
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379]
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server]
Selected config:
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!
6.验证
# ps -ef |grep redis
# chkconfig --list |grep redis
redis_6379 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# redis-cli -p 6379
127.0.0.1:6379> info
7.启停
#service redis_6379 stop
#service redis_6379 start
8.问题总结:
1)安装gcc、jemalloc
# yum -y install gcc
# rpm -ivh jemalloc-3.6.0-1.el6.x86_64.rpm
2)make时报如下错误,一定要用jemalloc
zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
make[1]: *** [adlist.o] Error 1
原因是jemalloc重载了Linux下的ANSI C的malloc和free函数。解决办法:make时添加参数。
解决方法:
#make MALLOC=libc
3)make之后,会出现一句提示
Hint: To run 'make test' is a good idea ;)
但是不测试,通常是可以使用的。若我们运行make test ,会有如下提示
#make test
You need tcl 8.5 or newer in order to run the Redis test
make: ***[test] Error_1
解决办法是用yum安装tcl8.5(或去tcl的官方网站http://www.tcl.tk/下载8.5版本,并参考官网介绍进行安装)
#yum install tcl
4)编译测试报错
*** [err]: Test replication partial resync: no backlog (diskless: no, reconnect: 1) in tests/integration/replication-psync.tcl
Expected condition '[s -1 sync_partial_err] > 0' to be true ([s -1 sync_partial_err] > 0)
Cleanup: may take some time... OK
make[1]: *** [test] 错误 1
make[1]: Leaving directory `/usr/local/redis-3.0.7/src'
make: *** [test] 错误 2
解决办法:
在速度较慢的机器上执行make test可能出现下列错误,无影响
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流