生產環境單機版Redis5.0的安裝和啟動方案
阿新 • • 發佈:2018-12-21
目錄
- 安裝單機版redis
- redis的生產環境啟動方案
- redis的啟動和關閉
- redis 配置公網可訪問
安裝
wget http://download.redis.io/releases/redis-5.0.0.tar.gz
tar xvf redis-5.0.0.tar.gz
[[email protected] java]# cd ./redis-5.0.0/
[[email protected] redis-5.0.0]# make && make install
/bin/sh: cc: command not found
yum install gcc
jemalloc/jemalloc.h: No such file or directory
原因是jemalloc過載了Linux下的ANSI C的malloc和free函式。解決辦法:make時新增引數。
make MALLOC=libc
Hint: It's a good idea to run 'make test' ;)
出現上面的提示代表成功了
啟動方案
需要把redis作為一個系統的daemon程序去執行的,每次系統啟動,redis程序一起啟動
//上面的文字描述 (1)將redis utils目錄下的,redis_init_script指令碼拷貝到linux的/etc/init.d目錄中 (2)將redis_init_script重新命名為redis_6379,6379是我們希望這個redis例項監聽的埠號 (3)修改redis_6379指令碼的第6行的REDISPORT,設定為相同的埠號(預設就是6379) (4)建立兩個目錄:/etc/redis(存放redis的配置檔案),/var/redis/6379(存放redis的持久化檔案) (5)拷貝redis配置檔案(預設在根目錄下,redis.conf),拷貝到/etc/redis目錄中,修改名稱為6379.conf (6)修改6379.conf中的部分配置為生產環境 daemonize yes 讓redis以daemon程序執行 pidfile /var/run/redis_6379.pid 設定redis的pid檔案位置 port 6379 設定redis的監聽埠號 dir /var/redis/6379 設定持久化檔案的儲存位置 (7)啟動redis,執行cd /etc/init.d, chmod 777 redis_6379,./redis_6379 start (8)確認redis程序是否啟動,ps -ef | grep redis (9)讓redis跟隨系統啟動自動啟動 在redis_6379指令碼中,最上面,加入兩行註釋 # chkconfig: 2345 90 10 # description: Redis is a persistent key-value database chkconfig redis_6379 on
安裝實操命令
[[email protected] utils]# cp ./redis_init_script /etc/init.d/
[[email protected] utils]# mv /etc/init.d/redis_init_script /etc/init.d/redis_6379
[[email protected] init.d]# mkdir /etc/redis/
[[email protected] init.d]# mkdir /var/redis/
[[email protected] init.d]# mkdir /var/redis/6379
[ [email protected] redis-5.0.0]# cp ./redis.conf /etc/redis/
[[email protected] redis-5.0.0]# cd /etc/redis/
[[email protected] redis]# mv redis.conf 6379.conf
[[email protected] init.d]# vim ./redis_6379
改成自己的安裝路徑
EXEC=/usr/local/java/redis-5.0.0/src/redis-server
CLIEXEC=/usr/local/java/redis-5.0.0/src/redis-cli
[[email protected] init.d]# chmod 777 redis_6379
[[email protected] init.d]# ./redis_6379 start
Starting Redis server...
75656:C 09 Nov 2018 14:36:49.060 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
75656:C 09 Nov 2018 14:36:49.060 # Redis version=5.0.0, bits=64, commit=00000000, modified=0, pid=75656, just started
75656:C 09 Nov 2018 14:36:49.060 # Configuration loaded
//測試連線是否通暢
[[email protected] src]# ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>
Redis的啟動和關閉
[[email protected] ~]# cd /usr/local/java/redis-5.0.0/src/
[[email protected] init.d]# ./redis_6379 start
[[email protected] src]# ./redis-cli -p 6379 shutdown
Redis配置外網訪問
1)開啟配置檔案把下面對應的註釋掉
# bind 127.0.0.1
2)Redis預設不是以守護程序的方式執行,可以通過該配置項修改,使用yes啟用守護程序,設定為no
daemonize no
3)保護模式
protected-mode no
下面的錯誤是因為保護模式沒有關閉產生的
DENIED Redis is running in protected mode because protected mode is enabled
外網測試返回PONG代表成功
[[email protected] src]# ./redis-cli -h 公網IP -p 6379
公網IP:6379> ping
PONG
結語
本次安裝環境基於Redis5.0和CentOS7.2,請知悉