【redis】centos7 安裝配置 redis

centos7 安轉redis以及設置自啓動

前言

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

1 . 下載Redis 
目前,最新的Redist版本爲3.0,使用wget下載,命令如下:

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

2 . 解壓Redis 

# tar -xzvf redis-4.0.2.tar.gz

3 . 編譯安裝Redis 
切換至程序目錄,並執行make命令編譯:

# cd redis-4.0.2
# make

make的過程中如出現gcc報錯,則需要安裝編譯環境,如下:

# yum install gcc-c++  

執行安裝命令

# make install

make install安裝完成後,會在/usr/local/bin目錄下生成下面幾個可執行文件,它們的作用分別是:

redis-server:Redis服務器端啓動程序 
redis-cli:Redis客戶端操作工具。也可以用telnet根據其純文本協議來操作 
redis-benchmark:Redis性能測試工具 
redis-check-aof:數據修復工具 
redis-check-dump:檢查導出工具

4 . 配置Redis 
從解壓目錄下複製配置文件到/etc/redis目錄:

# mkdir /etc/redis
# cp redis.conf /etc/redis/6379.conf

爲了讓redis後臺運行,一般還需要修改redis.conf文件:

vi /etc/redis/6379.conf

修改如下配置項,使redis進程在後臺運行:

daemonize yes

補充 redis.conf 中的daemonize 配置:

 daemonize yes 代表開啓守護進程模式。此時是單進程多線程的模式,redis將在後臺運行,並將pid寫入redis.conf--pidfile文件中,此時redis將一直運行,除非手動kill

 daemonize no 當前界面將進入redis的命令行界面,exit強制退出或者關閉連接工具(xshell等)都會導致redis進程退出

修改bind:

原來:bind  127.0.0.1  代表本地迴環地址,訪問redis服務只能通過本機的客戶端連接,而無法通過遠程連接
修改爲:將此行註釋或者講ip改成0.0.0.0   這樣就能接受所有來自於可用網絡接口的連接

修改protected mode  保護模式,只允許本地鏈接:

修改爲:protected mode no

設置密碼:在配置文件中有個參數: requirepass  這個就是配置redis訪問密碼的參數;

requirepass test123;

可以在登錄redis後通過如下命令進行操作:

設置密碼:redis 127.0.0.1:6379> config set requirepass test123

查詢密碼:redis 127.0.0.1:6379> config get requirepass

設置密碼後可使用如下命令登錄:

 登錄時攜帶密碼:redis-cli -p 6379 -a test123

 先登陸後驗證:redis 127.0.0.1:6379>redis-cli -p 6379             redis 127.0.0.1:6379> auth test123

5 . 啓動redis 
配置完成後,啓動redis:

# cd /usr/local/bin
# ./redis-server /etc/redis/6379.conf

檢查啓動情況:

# ps -ef | grep redis

redis啓動和停止

1 . 第一種方式: 如上步驟5,這種方式每次重啓服務器後要手動啓動,不太符合我們的需求

2.第二種方式:自啓動redis服務

通過初始化腳本啓動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加入系統啓動項裏了

# chmod 755 /etc/init.d/redis		//添加執行權限
# chkconfig redis_6379 on               //設置開機執行redis腳本

通過上面的操作後,以後也可以直接用下面的命令對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 desktop manager連接redis,此時需要開放6379端口(centos7)

systemctl stop firewalld.service	關閉防火牆
systemctl start firewalld.service	開啓防火牆
查看所有打開的端口: firewall-cmd --zone=public --list-ports
更新防火牆規則: firewall-cmd --reload
添加端口: firewall-cmd --zone=public --add-port=6379/tcp --permanent(--permanent永久生效,沒有此參數重啓後失效)
重啓防火牆:firewall-cmd --reload
查看:firewall-cmd --zone= public --query-port=80/tcp
刪除:firewall-cmd --zone= public --remove-port=80/tcp --permanent
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章