下载地址http://redis.io/download
环境centos6.7
一、程序安装
[root@trcloud-wujian-test01 redis]#tar -xf redis-3.0.7.tar.gz
[root@trcloud-wujian-test01 redis]#cd redis-3.0.7
[root@trcloud-wujian-test01 redis-3.0.7]# make
cd src && make all
make[1]: Entering directory `/disk/upload/redis/redis-3.0.7/src'
CC adlist.o
/bin/sh: cc: command not found
make[1]: *** [adlist.o] Error 127
make[1]: Leaving directory `/disk/upload/redis/redis-3.0.7/src'
make: *** [all] Error 2
错误原因:缺少gcc
解决方法:用yum安装gcc
[root@trcloud-wujian-test01 redis-3.0.7]#yum install gcc
再执行make还是有错误
[root@trcloud-wujian-test01 redis-3.0.7]# make
cd src && make all
make[1]: Entering directory `/disk/upload/redis/redis-3.0.7/src'
CC adlist.o
In file included from adlist.c:34:
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
make[1]: Leaving directory `/disk/upload/redis/redis-3.0.7/src'
make: *** [all] Error 2
关于分配器allocator, 如果有MALLOC 这个 环境变量, 会有用这个环境变量的 去建立Redis。
而且libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比libc。
但是如果你又没有jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数。
解决办法:
[root@trcloud-wujian-test01 redis-3.0.7]# make MALLOC=libc
make install命令执行完成后,会在/usr/local/bin目录下生成本个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof 、redis-check-dump,它们的作用如下:
redis-server:Redis服务器的daemon启动程序
redis-cli:Redis命令行操作工具。也可以用telnet根据其纯文本协议来操作
redis-benchmark:Redis性能测试工具,测试Redis在当前系统下的读写性能
redis-check-aof:数据修复
redis-check-dump:检查导出工具
程序安装成功
二、修改系统配置文件
a) echo vm.overcommit_memory=1 >> /etc/sysctl.conf
b) sysctl vm.overcommit_memory=1 或执行echo vm.overcommit_memory=1 >>/proc/sys/vm/overcommit_memory
使用数字含义:
0,表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程
1,表示内核允许分配所有的物理内存,而不管当前的内存状态如何。
2,表示内核允许分配超过所有物理内存和交换空间总和的内存
三、修改redis配置文件
a)[root@trcloud-wujian-test01 bin]# cd /etc
b)[root@trcloud-wujian-test01 etc]# vi redis.conf
c) 修改daemonize yes---目的使进程在后台运行
参数介绍:
daemonize:是否以后台daemon方式运行
pidfile:pid文件位置
port:监听的端口号
timeout:请求超时时间
loglevel:log信息级别
logfile:log文件位置
databases:开启数据库的数量
save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
rdbcompression:是否使用压缩
dbfilename:数据快照文件名(只是文件名,不包括目录)
dir:数据快照的保存目录(这个是目录)
appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
四、 启动redis
a) [root@trcloud-wujian-test01 bin]cd /usr/local/bin
b) ./redis-server /etc/redis.conf
五、 检查是否启动成功
a)[root@trcloud-wujian-test01 bin]# ps -ef|grep redis
root 19813 1 0 10:22 ? 00:00:00 ./redis-server *:6379
root 19818 18799 0 10:22 pts/0 00:00:00 grep redis
b)[root@trcloud-wujian-test01 bin]# redis-cli --进入命令行操作工具
127.0.0.1:6379> config get databases --config get查看配置参数
1) "databases"
2) "16"
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29989552/viewspace-2026964/
,如需转载,请注明出处,否则将追究法律责任。