CentOS下Redis的安裝


CentOS下Redis的安裝

前言

安裝Redis需要知道自己需要哪個版本,有針對性的安裝,比如如果需要redis GEO這個地理集合的特性,那么redis版本就不能低於3.2版本,由於這個特性是3.2版本才有的。另外需要注意的是,Redis約定次版本號(即第一個小數點后的數字)為偶數的版本是穩定版(如2.8版、3.0版),奇數版本是非穩定版(如2.7版、2.9版),生產環境下一般需要使用穩定版本。

下載安裝包

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

解壓安裝包並安裝

tar xzf redis-4.0.2.tar.gz
cd redis-4.0.2
make
make install

Redis沒有其他外部依賴,安裝過程很簡單。編譯后在Redis源代碼目錄的src文件夾中可以找到若干個可執行程序,安裝完后,在/usr/local/bin目錄中可以找到剛剛安裝的redis可執行文件。
如下圖:

啟動和停止Redis

啟動Redis

直接啟動

直接運行redis-server即可啟動Redis

[root@localhost bin]# redis-server

通過初始化腳本啟動Redis

在Redis源代碼目錄的utils文件夾中有一個名為redis_init_script的初始化腳本文件。需要配置Redis的運行方式和持久化文件、日志文件的存儲位置。步驟如下:

1、配置初始化腳本

首先將初始化腳本復制到/etc/init.d 目錄中,文件名為 redis_端口號,其中端口號表示要讓Redis監聽的端口號,客戶端通過該端口連接Redis。然后修改腳本第6行的REDISPORT變量的值為同樣的端口號。

2、建立以下需要的文件夾。

目錄名 Value
/etc/redis 存放Redis的配置文件
/var/redis/端口號 存放Redis的持久化文件

3、修改配置文件

首先將配置文件模板(redis-4.0.2/redis.conf)復制到/etc/redis 目錄中,以端口號命名(如“6379.conf”),然后按照下表對其中的部分參數進行編輯。

參數 說明
daemonize yes 使Redis以守護進程模式運行
pidfile /var/run/redis_端口號.pid 設置Redis的PID文件位置
port 端口號 設置Redis監聽的端口號
dir /var/redis/端口號 設置持久化文件存放位置

現在也可以使用下面的命令來啟動和關閉Redis了

/etc/init.d/redis_6379 start
/etc/init.d/redis_6379 stop

【重中之重】讓Redis隨系統自動啟動,這還需要對Redis初始化腳本進行簡單修改,執行命令:

vim /etc/init.d/redis_6379

在打開的redis初始化腳本文件頭部第四行的位置,追加下面兩句

# chkconfig: 2345 90 10 
# description: Redis is a persistent key-value database

追加后效果如下:

上圖紅色框中就是追加的兩行注釋,添加完畢后進行保存,即可通過下面的命令將Redis加入系統啟動項里了

//設置開機執行redis腳本
chkconfig redis_6379 on

通過上面的操作后,以后也可以直接用下面的命令對Redis進行啟動和關閉了,如下

service redis_6379 start
service redis_6379 stop

經過上面的部署操作后,系統重啟,Redis也會隨着系統自動啟動,並且上面的步驟里也配置了Redis持久化,下次啟動系統或Redis時,有緩存數據不丟失的好處。

停止Redis

考慮到 Redis 有可能正在將內存中的數據同步到硬盤中,強行終止 Redis 進程可能會導致數據丟失。正確停止Redis的方式應該是向Redis發送SHUTDOWN命令,方法為:

redis-cli SHUTDOWN

當Redis收到SHUTDOWN命令后,會先斷開所有客戶端連接,然后根據配置執行持久化,最后完成退出。
Redis可以妥善處理 SIGTERM信號,所以使用 kill Redis 進程的 PID也可以正常結束Redis,效果與發送SHUTDOWN命令一樣。

參考資料

  • Redis入門指南(第二版)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM