微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redis入门

一、安装

目前,官方最新稳定版本为3.0.7

# wget http://download.redis.io/releases/redis-3.0.7.tar.gz

# cd /usr/local/

# tar xvf /root/redis-3.0.7.tar.gz

# cd redis-3.0.7/

# make

 

二、启动

安装完成后,在src目录下会生成启动执行程序,包括redis-server,redis-sentinel, redis-benchmark,redis-cli等

# src/redis-server 

该启动方式是前台启动,如果关闭当前终端,则redis自动关闭

正如登录信息开头Warning所显示的,这种方式启动没有使用配置文件,所以并不推荐。认监听6379端口

24649:C 03 Feb 16:32:30.242 # Warning: no config file specified,using the default config. In order to specify a config file use src/redis-server /path/to/redis.conf
24649:M 30.243 * Increased maximum number of open files to 10032 (it was originally set to 1024).
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 3.0.7 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ._                                   
 (    ',.-`  | `,)     Running in standalone mode
 |`-._`-...-` __...-.``-._|` _.-'|     Port: 6379
 |    `-._   `._    /     _.-    |     PID: 24649
  `-._    `-._  `-./  _.-    _.-'                                   
 |`-._`-._    `-.__.-'_.-|                                  
 |    `-._`-._        _.-_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'    _.-'    |                                  
  `-._    `-._`-.__.-'                                   
      `-._    `-.__.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

30.246 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
30.246 # Server started,Redis version 7
30.246 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command sysctl vm.overcommit_memory=1' for this to take effect.
30.246 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root,and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
30.247 * The server is Now ready to accept connections on port 6379

 

关于redis-server的更多用法,可通过redis-server -h查看

# src/redis-server -h

Usage: ./redis-server [/path/to/redis.conf] [options]
       ./redis-server - (read config from stdin)
       ./redis-server -v or --version
       ./redis-server -h or --help
       ./redis-server --test-memory <megabytes>

Examples:
       ./redis-server (run the server with default conf)
       ./redis-server /etc/redis/6379.conf
       ./redis-server --port 7777
       ./redis-server --port 7777 --slaveof 127.0.0.1 8888
       ./redis-server /etc/myredis.conf --loglevel verbose

Sentinel mode:
       ./redis-server /etc/sentinel.conf --sentinel

 

配置文件中常用参数如下:

daemonize:是否以后台daemon方式运行,认是前台方式运行,即认值为no

pidfile:pid文件位置,认为:/run/redis.pid

port:监听的端口号,认为6379

bind 127.0.0.1 配置监听网卡的ip,针对有多个网卡的场景

logfile:log文件位置,认值为stdout,使用“标准输出”,后台模式会输出到/dev/null

loglevel notice ,指定日志记录级别,Redis总共支持四个级别:debug,verbose,notice,warning,认为notice

     Debug:记录很多信息,用于开发和测试

     Verbose:很多精简的有用信息,不像debug会记录那么多

     Notice:普通的verbose,常用于生产环境

     Warning:只有非常重要或者严重的信息会记录到日志

 

三、设置开机自启动

 将启动脚本复制到/etc/init.d目录下

# cp /usr/local/redis-3.0.7/utils/redis_init_script /etc/init.d/redisd

编辑启动脚本

# vim /etc/init.d/redisd

#!/bin/sh
# chkconfig:2345 90 10
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

REdisPORT=
EXEC=/usr/local/redis-7/src/redis-server
#EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/redis-cli

PIDFILE=/var/run/redis_${REdisPORT}.pid
CONF="/etc/redis/${REdisPORT}.conf"

 

要做了两项修改

一、添加了# chkconfig:2345 90 10

二、指定了redis-server和redis-cli的位置

EXEC=/usr/local/redis-3.0.7/src/redis-server

CLIEXEC=/usr/local/redis-3.0.7/src/redis-cli

注意:

PIDFILE=/var/run/redis_${REdisPORT}.pid指定了pid文件的位置

CONF="/etc/redis/${REdisPORT}.conf"指定了配置文件的位置

 

创建配置文件

# cd /etc/

# mkdir redis

# cp /usr/local/redis-3.0.7/redis.conf redis/6379.conf

 

修改配置文件

主要是设置redis后台进程运行和pid文件的位置

daemonize yes
pidfile /var/run/redis_6379.pid

 

以服务方式启动redis

# /etc/init.d/redisd start

Starting Redis server...

# ps -ef |grep redis

root      29836      1  0 18:23 ?        00:00 /usr/local/redis-7/src/redis-server *:
root      29846   4110  23 pts/0    00 grep --color=auto redis

 

客户端连接测试

# cd /usr/local/redis-3.0.7/src/

# ./redis-cli 

0.1:6379> set 123 hello
OK
6379> get 123
hello"

认连接到localhost 6379,查看服务器信息,可通过info命令。

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐