溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

發(fā)布時(shí)間:2021-07-16 14:42:35 來(lái)源:億速云 閱讀:214 作者:小新 欄目:數(shù)據(jù)庫(kù)

這篇文章主要介紹了Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù),具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

redis簡(jiǎn)單介紹

REmote DIctionary Server(Redis) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲(chǔ)系統(tǒng)。

Redis是一個(gè)開源的使用ANSI C語(yǔ)言編寫、遵守BSD協(xié)議、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù),并提供多種語(yǔ)言的API。

它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹担╲alue)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等類型。

一、在有外網(wǎng)情況下的安裝(外網(wǎng)的配置在linux分類的隨筆中有聊過(guò))

第一步:安裝編譯工具,redis是有ANSI C語(yǔ)言編寫的,我們需要安裝編譯它的工具

命令:yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel kernel keyutils patch perl

第二步:安裝tcl組件包,我們?cè)诎惭bredis的時(shí)候是需要tcl腳本語(yǔ)言支持的

#選擇一個(gè)存放軟件包存放的地方,進(jìn)入軟件包存放的目錄文件中

命令:cd /usr/local/src

#下載tcl組件包

命令:wget http://downloads.sourceforge.net/tcl/tcl8.6.6-src.tar.gz

#在當(dāng)前目錄解壓tcl組件包

命令:tar zxvf tcl8.6.6-src.tar.gz

#進(jìn)入解壓之后的安裝目錄文件

命令:cd tcl8.6.6

#配置tcl組件

命令:cd unix

命令:./configure --prefix=/usr --without-tzdata --mandir=/usr/share/man $([ $(uname -m) = x86_64 ] && echo --enable-64bit)

#編譯

命令:make

#以選項(xiàng)中指定的script來(lái)處理輸入的文本文件

命令:sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" -e "/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" -i tclConfig.sh

#安裝

命令:make install

命令:make install-private-headers

#建立軟連接(好比windows中的快捷方式)

命令:ln -v -sf tclsh8.6 /usr/bin/tclsh

#修改執(zhí)行文件權(quán)限

命令:chmod -v 755 /usr/lib/libtcl8.6.so

第三步:安裝Redis數(shù)據(jù)庫(kù)

#選擇一個(gè)存放軟件包存放的地方,進(jìn)入軟件包存放的目錄文件中

命令:cd /usr/local/src

#下載redis數(shù)據(jù)庫(kù)軟件包

命令:wget http://download.redis.io/redis-stable.tar.gz

#解壓redis數(shù)據(jù)庫(kù)軟件包

命令:tar -zxvf redis-stable.tar.gz

#創(chuàng)建redis的安裝目錄文件

命令:mkdir /usr/local/redis

#移動(dòng)文件到安裝目錄

命令:mv redis-stable /usr/local/redis

#進(jìn)入安裝目錄

命令:cd /usr/local/redis

#編譯

命令:make

#安裝

命令:make install

#然后查看/usr/local/bin目錄下是否有redis的程序文件,如果沒有,則從redis-stable中拷貝redis的程序文件

命令:cd /usr/local/bin

命令:ls

#注意:假如沒有則拷貝

命令:cd /usr/local/redis/redis-stable
命令:mkdir -p /usr/local/bin

#復(fù)制操作
命令:cp -p redis-server /usr/local/bin
命令:cp -p redis-benchmark /usr/local/bin
命令:cp -p redis-cli /usr/local/bin
命令:cp -p redis-check-dump /usr/local/bin
命令:cp -p redis-check-aof /usr/local/bin

#給redis的配置文件創(chuàng)建一個(gè)軟連接(好比windows中的快捷方式)

命令:ln -s /usr/local/redis/redis-stable/redis.conf /etc/redis.conf

#編輯redis配置文件

命令:vi /etc/redis.conf

#設(shè)置后臺(tái)啟動(dòng)redis(vim編輯器按i進(jìn)入編輯模式,exit退出編輯模式進(jìn)入命令模式)

daemonize yes

#強(qiáng)制保存退出

:wq!

#切換到/usr/local/bin目錄啟動(dòng)redis服務(wù)(cd切換命令)

命令:redis-server /etc/redis.conf

#關(guān)閉redis服務(wù)

命令:redis-cli shutdown

#編輯,在最后一行添加下面代碼

命令:vi /etc/sysctl.conf

vm.overcommit_memory = 1

#強(qiáng)制保存退出

:wq!

#使設(shè)置立即生效

命令:sysctl -p

第四步:設(shè)置redis在linux服務(wù)器上開機(jī)啟動(dòng)

#把redis工具中的初始化腳本拷貝到/etc/init.d/目錄文件中并重命名

命令:cd /usr/local/redis/redis-stable/utils/

命令:cpredis_init_script/etc/init.d/

命令:cd/etc/init.d/

命令:mvredis_init_script redis

#修改腳本執(zhí)行權(quán)限

命令:chmod 755 /etc/init.d/redis

#添加開機(jī)啟動(dòng)

命令:chkconfig --add redis

這時(shí)大家可能會(huì)遇到問(wèn)題,就是無(wú)法將redis添加到開機(jī)啟動(dòng)中,那么要怎么解決呢?

#編輯/etc/init.d/redis文件

命令:vi/etc/init.d/redis(i進(jìn)入編輯模式,exit返回命令模式:wq!強(qiáng)制保存退出)

在最前面加上兩行注釋放在/etc/init.d/redis文件靠前的注釋中:

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

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

上面的注釋的意思是,redis服務(wù)必須在運(yùn)行級(jí)2,3,4,5下被啟動(dòng)或關(guān)閉,啟動(dòng)的優(yōu)先級(jí)是90,關(guān)閉的優(yōu)先級(jí)是10。

#添加開機(jī)啟動(dòng)

命令:chkconfig --add redis

#把redis在運(yùn)行級(jí)別為2、3、4、5的情況下都是on(開啟)的狀態(tài)

命令:chkconfig –level redis 2345 on

#查看是否添加成功,列出所有的系統(tǒng)服務(wù),查看里面是否有redis

命令:chkconfig --list

#關(guān)閉redis服務(wù),啟動(dòng)redis服務(wù)

命令:service redis stop

命令:service redis start

最后一步:測(cè)試redis是否已經(jīng)成功啟動(dòng)服務(wù)

#查看本機(jī)ip地址

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

#使用第三方j(luò)ar包jedis在本地的java應(yīng)用程序中進(jìn)行測(cè)試

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

我相信很多人,在執(zhí)行的時(shí)候肯定會(huì)不通過(guò),比如連接超時(shí)之類的,這是為什么呢?讓我們一一來(lái)解決:

1.查看redis配置文件,并排查問(wèn)題,編輯之后保存

命令:vi /etc/redis.conf

第一個(gè)可能存在的問(wèn)題,ip被綁定了,其他ip無(wú)法訪問(wèn):

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

將綁定ip這個(gè)屬性注釋掉,繼續(xù)排查,還有一個(gè)可能存在的問(wèn)題,開啟了保護(hù)模式:

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

將它從yes改為no,然后執(zhí)行java程序測(cè)試,很多人可能還是會(huì)遇到類似的錯(cuò)誤,比如:

Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)

經(jīng)過(guò)前面的操作,我們可以確定redis服務(wù)是啟動(dòng)的,ip端口的設(shè)置也是正確的,保護(hù)模式也被我們關(guān)了,還不能訪問(wèn),那很大可能就是Linux防火墻導(dǎo)致其他電腦無(wú)法訪問(wèn)redis的6379端口了,我們現(xiàn)在windows上測(cè)試一下,通過(guò)cmd打開命令窗口,telnet命令如果不能使用,自己百度一下開啟。

命令:telnet 192.168.0.21 6379

如果很久都沒反應(yīng),或者出現(xiàn)了錯(cuò)誤,則需要在Linux服務(wù)器上關(guān)掉防火墻或者添加此端口允許被訪問(wèn)。

#通過(guò)root用戶登錄Linux服務(wù)器,執(zhí)行命令開啟端口

命令:/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

然后再執(zhí)行Java應(yīng)用程序測(cè)試一波,基本上就沒什么問(wèn)題了,也能得到像上面那樣的正確的結(jié)果。

二、在沒有外網(wǎng)情況下的安裝,假設(shè)此時(shí)只有局域網(wǎng)怎么辦

第一步:將Linux服務(wù)器對(duì)應(yīng)的鏡像文件掛載到/mnt目錄文件下

比如:mount -o loop /data/downloads/redhat/rhel-server-6.5-x86_64-dvd.iso /mnt

#鏡像文件包中包含了大多數(shù)玩轉(zhuǎn)Linux所需的軟件

cd /mnt/Packages

第二步:安裝gcc編譯工具,相關(guān)安裝包從centos6.6.iso鏡像文件的package包中獲取

執(zhí)行以下的命令:

rpm -ivh mpfr-2.4.1-6.el6.i686.rpm 回車
rpm -ivh cpp-4.4.6-4.el6.i686.rpm 回車
rpm -ivh kernel-headers-2.6.32-279.el6.i686.rpm 回車
rpm -ivh glibc-headers-2.12-1.80.el6.i686.rpm 回車
rpm -ivh glibc-devel-2.12-1.80.el6.i686.rpm 回車
rpm -ivh libgomp-4.4.6-4.el6.i686.rpm 回車
rpm -ivh ppl-0.10.2-11.el6.i686.rpm
rpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpm 回車
rpm -ivh gcc-4.4.6-4.el6.i686.rpm 回車 
rpm -ivh libstdc++-devel-4.4.7-11.el6.x86_64.rpm 回車
rpm -ivh gcc-c++-4.4.6-4.el6.i686.rpm 回車

如果error: Failed dependencies: cpp = 4.4.7-4.el6 is needed by gcc-4.4.7-4.el6.x86_64

安裝gcc及其他依賴包的時(shí)候,加上參數(shù) --force --nodeps

例如:

rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm --nodeps --force
#rpm卸載命令
rpm -e --nodeps gcc-4.4.7-4.el6.x86_64
#卸載掛載的資源
umount /mnt

第三步,將下載好的tcl組件包安裝到Linux服務(wù)器中

將文件copy到 /usr/local/src 目錄下(隨意目錄)

chmod 777 tcl8.6.1-src.tar.gz 
tar xzvf tcl8.6.1-src.tar.gz
cd tcl8.6.1/nuix
./configure 或者 ./configure --prefix=/usr/local/tcl8.6.1/ --enable-shared
make
make install

第四步:將下載好的redis數(shù)據(jù)庫(kù)安裝包安裝到Linux服務(wù)器中

將文件copy到 /usr/local/src 目錄下(隨意目錄)

chmod 777 redis-2.8.8.tar.gz
tar xzf redis-2.8.8.tar.gz
cd redis-2.8.8
make MALLOC=libc
make test
make install

后面這種方式就大概給大家提個(gè)思路,你完全可以自己結(jié)合上面詳細(xì)的在線安裝的方式去實(shí)現(xiàn)沒有外網(wǎng)時(shí)候的安裝,這里主要的區(qū)別就是沒有外網(wǎng)的時(shí)候gcc編譯工具可以從掛載的ios鏡像中去獲取,然后所有的安裝包都是已經(jīng)下載好的,需要自己上傳到Linux服務(wù)器中。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Linux服務(wù)器如何安裝redis數(shù)據(jù)庫(kù)”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI