文件服务器下安装redis,服务器搭建十三一Redis安装和配置

安装环境

• 操作系统:Centos6.4 x64

• 安装软件:redis-3.2.9.tar.gz

1. 环境优化

做如下优化原因:解决redis启动时报错。

vi /etc/sysctl.conf

在文件末尾加上,然后保存

net.core.somaxconn = 2048

vm.overcommit_memory = 1

运行命令使修改生效

/sbin/sysctl -p

vi /etc/rc.local

在文件末尾加上,然后保存

echo never > /sys/kernel/mm/transparent_hugepage/enabled

重启服务器

修改somaxconn

该内核参数默认值一般是128(定义了系统中每一个端口最大的监听队列的长度),对于负载很大的服务程序来说大大的不够。一般会将它修改为2048或者更大

overcommit_memory参数说明:

设置内存分配策略(可选,根据服务器的实际情况进行设置)

/proc/sys/vm/overcommit_memory

可选值:0、1、2。

0, 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。

1, 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。

2, 表示内核允许分配超过所有物理内存和交换空间总和的内存

transparent_hugepage

透明大页(THP)管理和标准/传统大页(HP)管理都是操作系统为了减少页表转换消耗的资源而发布的新特性,虽然ORACLE建议利用大页机制来提高数据库的性能,但是ORACLE却同时建议关闭透明大页管理,在redis中建议关闭。

2. 安装步骤

cd到redis安装包所在文件夹

解压

tar -zxvf redis-3.2.9.tar.gz

安装

cd redis-3.2.9

make MALLOC=libc 解决报错问题

安装,可通过PREFIX指定安装目录

make install PREFIX=/usr/local/redis

将源码中的配置文件拷贝到安装目录bin文件夹

cp /usr/local/src/redis-3.2.9/redis.conf /usr/local/redis/bin/

cp /usr/local/src/redis-3.2.9/sentinel.conf /usr/local/redis/bin/

运行

cd /usr/local/redis/bin

./redis-server redis.conf

停止

cd /usr/local/redis/bin

./redis-cli shutdown

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 `/data0/src/redis-2.6.2/src'

make: *** [all] Error 2

解决办法是:

make MALLOC=libc

3. 纯缓存模式下配置说明(其他模式配置,后续学习后再更新)

在缓存模式下Redis不需要存储数据(数据可以从数据库中得到)

#参数,是否开启保护模式,默认开启。要是配置里没有指定bind和密码。开启该参数后,redis只会本地进行访问,拒绝外部访问。要是开启了密码 和bind,可以开启。否则最好关闭,生产服务器设置为yes。

protected-mode yes

#redis监听的端口号,根据需要设置

port 6379

#指定 redis 只接收来自于本机的该IP对应网卡的请求,如果不进行设置,那么将处理所有请求

bind 127.0.0.1 #此处需要注意两个ip地址只能使用一个生效,否则会被覆盖掉。

bind 192.168.0.203

#requirepass配置可以让用户使用AUTH命令来认证密码,才能使用其他命令。这让redis可以使用在不受信任的网络中。为了保持向后的兼容性,可以注释该命令,因为大部分用户也不需要认证。使用requirepass的时候需要注意,因为redis太快了,每秒可以认证15w次密码,简单的密码很容易被攻破,所以最好使用一个更复杂的密码。 requirepass redis

# 快照配置

# 注释掉“save”这一行配置项就可以让保存数据库功能失效

# 设置redis进行数据库镜像的频率。

# 900秒(15分钟)内至少1个key值改变(则进行数据库保存--持久化)

# save 900 1

# 300秒(5分钟)内至少10个key值改变(则进行数据库保存--持久化)

# save 300 10

# 60秒(1分钟)内至少10000个key值改变(则进行数据库保存--持久化) save 300 10 save 60 10000

# save 60 10000

# 缓存模式下可通过以下设置关闭RDB

save ""

#redis配置的最大内存容量。当内存满了,需要配合maxmemory-policy策略进行处理。注意slave的输出缓冲区是不计算在maxmemory内的。所以为了防止主机内存使用完,建议设置的maxmemory需要小于服务器剩余内存。

# 当前配置为最大内存4G,根据服务器实际需要修改

maxmemory 4294967296

#默认redis使用的是rdb方式持久化,这种方式在许多应用中已经足够用了。但是redis如果中途宕机,会导致可能有几分钟的数据丢失,根据save来策略进行持久化,Append Only File是另一种持久化方式,可以提供更好的持久化特性。Redis会把每次写入的数据在接收后都写入 appendonly.aof 文件,每次启动时Redis都会先把这个文件的数据读入内存里,先忽略RDB文件。

# 缓存模式下可通过以下设置关闭appendonly

appendonly no

把daemonize设置为yes 可以后台启动

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值