概述
Redis是Remote Dictionary Server的縮寫。他本質上一個Key/Value
數據庫,與Memcached類似的NoSQL型數據庫。今天把之前在生產環境下安裝部署redis的過程整理了下,百變不離其宗,大家也可以自己安裝下。一、安裝前環境說明
Linux環境,需要gcc++,make等。
1、配置yum源
2、操作系統選擇:redhat、centos等主流linux系統
二、下載
Redis可以到官方網站下載,這裡就不介紹了。
三、安裝
1、解壓後編譯及安裝
1.1、解壓Redis的tar包
tar -xvf redis-3.2.9.tar.gz
1.2、編譯安裝
進入redis解壓目錄,執行如下命令編譯Redis:
[root@node1 redis-3.2.9]# cd /opt/redis/redis-3.2.9
[root@node1 redis-3.2.9]# make
cd src && make all
make[1]: Entering directory `/opt/redis/redis-3.2.9/src'
rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-rdb redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html
(cd ../deps && make distclean)
make[2]: Entering directory `/opt/redis/redis-3.2.9/deps'
(cd hiredis && make clean) > /dev/null || true
.........
2、編譯完成後,在Src目錄下,有四個可執行文件redis-server、redis-benchmark、redis-cli和redis.conf。然後拷貝到一個目錄下。
[root@node1 src]# mkdir -p /usr/local/redis
[root@node1 src]# cp redis-server /usr/local/redis/
[root@node1 src]# cp redis-benchmark /usr/local/redis/
[root@node1 src]# cp redis-cli /usr/local/redis
[root@node1 redis-3.2.9]# pwd
/opt/redis/redis-3.2.9
[root@node1 redis-3.2.9]# cp redis.conf /usr/local/redis/
三、啟動、停止重新加載Redis配置
1、 啟動Redis服務器
#cd /usr/local/redis
#./redis-server redis.conf
![linux環境下安裝部署redis服務器](http://p2.ttnews.xyz/loading.gif)
2、測試是否啟動
2.1、啟動redis-cli ping 返回PONG,啟動成功。
[root@node1 redis]# ./redis-cli ping
PONG
2.2、查看端口是否被佔用:netstat –ntlp |grep 6379
[root@node1 redis]# netstat -ntpl|grep 6379
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 6999/./redis-server
2.3、查看redis服務
[root@node1 redis]# ps -ef|grep redis
root 9285 1 0 18:27 ? 00:00:00 /usr/local/redis/redis-server 127.0.0.1:6379
root 9292 7004 0 18:28 pts/1 00:00:00 grep redis
2.4、用客戶端測試是否正常啟動
![linux環境下安裝部署redis服務器](http://p2.ttnews.xyz/loading.gif)
3、停止Redis
關閉服務
redis-cli shutdown
[root@node1 redis]# ./redis-cli shutdown
[root@node1 redis]# netstat -ntpl|grep 6379
[root@node1 redis]#
四、redis.conf參數詳解
vi /usr/local/redis/redis.conf
#查找daemonize no改為
#以守護進程方式運行
daemonize yes
#修改dir ./為絕對路徑,
#默認的話redis-server啟動時會在當前目錄生成或讀取dump.rdb
#所以如果在根目錄下執行redis-server /etc/redis.conf的話,
#讀取的是根目錄下的dump.rdb,為了使redis-server可在任意目錄下執行
#所以此處將dir改為絕對路徑
dir /usr/local/redis
#修改appendonly為yes
#指定是否在每次更新操作後進行日誌記錄,
#Redis在默認情況下是異步的把數據寫入磁盤,
#如果不開啟,可能會在斷電時導致一段時間內的數據丟失。
#因為 redis本身同步數據文件是按上面save條件來同步的,
#所以有的數據會在一段時間內只存在於內存中。默認為no
appendonly yes
查看配置文件:grep -v '^#\|^$' redis.conf
總結:
一般在項目中使用redis,主要是從兩個角度去考慮:性能和併發。當然,redis還具備可以做分佈式鎖等其他功能,但是如果只是為了分佈式鎖這些其他功能,完全還有其他中間件(如zookpeer等)代替,並不是非要使用redis。個人比較推薦tomcat+mysql+redis這種架構(redis主要負責緩存和session保持)。
後面會分享更多運維方面的原創內容,感興趣的朋友可以關注下!!
閱讀更多 智能運維小講堂 的文章