天天看点

linux安装redis内存数据库应用场景操作步骤

应用场景

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。当想使用测试内存数据库redis时,就需要在本地linux服务器上进行安装了!

操作步骤

1. 安装软件包

安装依赖
 # yum -y install gcc gcc-c++

下载解压缩并编译源码包
 # wget http://download.redis.io/releases/redis-3.0.3.tar.gz
 # tar xzf redis-3.0.3.tar.gz
 # cd redis-3.0.3
 # make

创建安装目录
 # mkdir -p /usr/local/redis/bin
 # mkdir /usr/local/redis/data
 # mkdir /usr/local/redis/logs

将编译生成的以下可执行文件拷贝到安装目录
 # cd src
 # cp redis-server /usr/local/redis/bin
 # cp redis-benchmark /usr/local/redis/bin
 # cp redis-cli /usr/local/redis/bin

复制并以端口重命名配置文件
 # cd ../
 # cp redis.conf /usr/local/redis/6379.conf

复制并重命名服务启动脚本
 # cd utils
 # cp redis_init_script /etc/init.d/redisd           

2. 修改配置文件

编辑修改Redis配置文件以下参数:
 # vim /usr/local/redis/6379.conf

daemonize yes  #设置服务以守护进程方式运行
pidfile /var/run/redis_6379.pid  #pid文件
timeout 300  #客户端空闲多少秒之后关闭连接
tcp-keepalive 60  #客户端健康状态检测,避免服务器一直阻塞
loglevel warning  #日志级别
logfile "/usr/local/redis/logs/redis.log"  #日志文件
dir /usr/local/redis/data  #数据目录           

3. 配置服务

配置启动脚本,编辑修改红色字体部分:
 # vim /etc/init.d/redisd
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/usr/local/redis/${REDISPORT}.conf"
… …

修复启动警告并配置自启动
编辑sysctl.conf在最后增加vm.overcommit_memory = 1
 # vim /etc/sysctl.conf
vm.overcommit_memory = 1

 # vim /etc/rc.local
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 511 > /proc/sys/net/core/somaxconn
service redisd start

重启服务器
 # reboot           

4. 安装验证

查看服务是否自启动
 # tail -f /usr/local/redis/logs/redis.log
Server started, Redis version 3.0.3

使用自带客户端工具测试key-value存取功能
 # cd /usr/local/redis/bin
 # ./redis-cli
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set test "hello world"
OK
127.0.0.1:6379> get test
"hello world"

关闭服务
 # service redisd stop
Stopping ...
Redis stopped

启动服务
 # service redisd start
Starting Redis server...