Redis安裝入門

x83c0r4s 8年前發布 | 13K 次閱讀 Redis NoSQL數據庫

來自: http://www.cnblogs.com/ivictor/p/5179990.html

一、安裝

目前,官方最新穩定版本為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 03 Feb 16:32: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
-._-.`-.__.-'.-' .-'
|`-.
-._-..-' .-'.-'|
| -._-. .-'.-' |
`-.
-._-.
.-'.-' .-'
-._-..-' .-'
`-.
_.-'
`-.
.-'

24649:M 03 Feb 16:32: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. 24649:M 03 Feb 16:32:30.246 # Server started, Redis version 3.0.7 24649:M 03 Feb 16:32: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. 24649:M 03 Feb 16:32: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. 24649:M 03 Feb 16:32:30.247 * The server is now ready to accept connections on port 6379</pre>

關于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</pre>

配置文件中常用參數如下:

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=6379 EXEC=/usr/local/redis-3.0.7/src/redis-server

EXEC=/usr/local/bin/redis-server

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

PIDFILE=/var/run/redis_${REDISPORT}.pid CONF="/etc/redis/${REDISPORT}.conf"</pre>

主要做了兩項修改,

一、添加了# 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:00 /usr/local/redis-3.0.7/src/redis-server *:6379
root      29846   4110  0 18:23 pts/0    00:00:00 grep --color=auto redis

客戶端連接測試

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

# ./redis-cli

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

默認連接到localhost 6379,查看服務器信息,可通過info命令。

</div>

 本文由用戶 x83c0r4s 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!