欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解在Redis在Centos7上的安裝部署

 更新時間:2016年12月30日 15:37:09   作者:LSGOZJ  
Redis是一種高級key-value數(shù)據(jù)庫。這篇文章主要介紹了詳解在Redis在Centos7上的安裝部署,有興趣的可以了解一下。

Redis是一種高級key-value數(shù)據(jù)庫。它跟memcached類似,不過數(shù)據(jù)可以持久化,而且支持的數(shù)據(jù)類型很豐富。有字符串,鏈表,集 合和有序集合。支持在服務(wù)器端計算集合的并,交和補集(difference)等,還支持多種排序功能。所以Redis也可以被看成是一個數(shù)據(jù)結(jié)構(gòu)服務(wù)器。

Redis的所有數(shù)據(jù)都是保存在內(nèi)存中(效率高),然后不定期的通過異步方式保存到磁盤上(這稱為“半持久化模式”);也可以把每一次數(shù)據(jù)變化都寫入到一個append only file(aof)里面(這稱為“全持久化模式”)。

關(guān)于Redis更多的簡介請參考Redis官方網(wǎng)站中文版,在這里我僅僅給出Redis在Centos7上的安裝部署。

步驟一:下載Redis安裝包

首先從官網(wǎng)下在redis正式版的壓縮包redis-2.8.19.tar.gz:

cd /home/downloads
wget http://download.redis.io/releases/redis-2.8.19.tar.gz

步驟二:編譯源程序

解壓和編譯

tar -zxvf redis-2.8.19.tar.gz
cd redis-2.8.19/src
//編譯
make

…….此處是大量編譯過程,省略??赡苡幸恍┚妫蝗ス偎鼈儭?

CC setproctitle.o

CC hyperloglog.o

CC latency.o

CC sparkline.o

LINK redis-server

INSTALL redis-sentinel

CC redis-cli.o

LINK redis-cli

CC redis-benchmark.o

LINK redis-benchmark

CC redis-check-dump.o

LINK redis-check-dump

CC redis-check-aof.o

LINK redis-check-aof

Hint: It's a good idea to run ‘make test' ;)

進(jìn)入src進(jìn)行安裝:

cd src
make install

//安裝過程提示

Hint: It's a good idea to run ‘make test' ;)

INSTALL install

INSTALL install

INSTALL install

INSTALL install

INSTALL install

這時候,我們可以看看src下的文件:

可以看到此時,src文件夾下出現(xiàn)了一些綠色的文件,這些文件就是我們以后需要用到的命令文件

步驟三:移動文件

移動文件,便于管理:(所有源代碼安裝的軟件都安裝在/usr/local下,如apache等)

創(chuàng)建兩個文件夾,bin用于存放命令,etc擁有存放配置文件。

mkdir -p /usr/local/redis/etc
mkdir -p /usr/local/redis/etc

-p是遞歸創(chuàng)建。

接下來,將redis-2.8.19文件夾下的redis.conf復(fù)制到/usr/local/redis/etc/

并將src目錄下的7個命令文件(綠色的),移動到/usr/local/redis/bin/

[lsgozi@localhost src]$ cd ..
[lsgozi@localhost redis-2.8.19]$ ls
00-RELEASENOTES COPYING Makefile  redis.conf    sentinel.conf utils
BUGS       deps   MANIFESTO runtest      src
CONTRIBUTING   INSTALL README   runtest-sentinel tests
[lsgozi@localhost redis-2.8.19]$ mv ./redis.conf /usr/local/redis/etc/
[lsgozi@localhost redis-2.8.19]$ cd src
[lsgozi@localhost src]$ mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server /usr/local/redis/bin/

步驟四:啟動Redis服務(wù):

首先進(jìn)入剛才安裝redis的目錄:

[lsgozi@localhost src]$ cd /usr/local/redis/bin
[lsgozi@localhost bin]$ ls
mkreleasehdr.sh redis-check-aof  redis-cli    redis-server
redis-benchmark redis-check-dump redis-sentinel

之后我們啟動redis服務(wù)。啟動redis服務(wù)需要用到命令redis-server

[lsgozi@localhost bin]$ ./redis-server

結(jié)果:

但是,這樣做的話,我們并沒有使用etc的下的配置文件進(jìn)行啟動(圖中紅線部分)。

如果希望通過指定的配置文件啟動,需要在啟動時指定配置文件:

這里我們先用ctrl+C來終止服務(wù),然后查看redis服務(wù)是否終止干凈了,之后通過設(shè)置配置文件來啟動服務(wù):

按下ctrl+c后(^C):

^C[32138 | signal handler] (1463921540) Received SIGINT scheduling shutdown...
[32138] 22 May 20:52:20.380 # User requested shutdown...
[32138] 22 May 20:52:20.380 * Saving the final RDB snapshot before exiting.
[32138] 22 May 20:52:20.393 * DB saved on disk
[32138] 22 May 20:52:20.393 # Redis is now ready to exit, bye bye...

運行:pstree -p | grep redis 發(fā)現(xiàn)redis服務(wù)已經(jīng)被終止干凈

現(xiàn)在我們帶上配置文件 /usr/local/etc/redis.conf 運行redis

[lsgozi@localhost bin]$ ./redis-server /usr/local/redis/etc/redis.conf

但是,現(xiàn)在redis仍然是在前臺運行。

如果要后臺啟動該怎么辦呢?

在這里我們用—-直接將命令丟到后臺中“執(zhí)行”的 & ?可以嗎?

答案是不可以的,Redis的后臺啟動并運行需要通過配置文件中的參數(shù)設(shè)置。如果需要在后臺運行,把daemonize配置項改為yes

vim /usr/local/redis/etc/redis.conf

搜索 :'\daemonize'

把daemonize配置項改為yes

保存退出

之后我們再次使用配置文件啟動redis-server。

可以看到,redis是后臺啟動了,并且通過ps命令可以查看到redis正在運行。

[lsgozi@localhost bin]\$ ./redis-server /usr/local/redis/etc/redis.conf
[lsgozi@localhost bin]\$ ps -ef | grep redis
root   13154   1 0 22:53 ?    00:00:00 ./redis-server *:6379
neil   13162 8143 0 22:54 pts/0  00:00:00 grep --color=auto redis
[lsgozi@localhost bin]$ pstree -p | grep redis
      |-redis-server(13154)-+-{redis-server}(13156)
      |           `-{redis-server}(13157)

Redis服務(wù)端默認(rèn)連接端口是6379.

就好比 mysql 或 mariadb 服務(wù)端默認(rèn)連接端口是3306

在平時,我們往往需要查看6379端口是否被占用??梢杂靡韵旅睿?/p>

netstat -tunpl | grep 6379

注意,redis服務(wù)需要 root 權(quán)限才能查看,不然只能檢查到6379被某個進(jìn)程占用,但是看不到進(jìn)程名稱。

至此,redis服務(wù)已經(jīng)按照配置文件啟動成功??!

步驟五:客戶端登錄

[lsgozi@localhost bin]$ /usr/local/redis/bin/redis-cli 

回車后如果提示:

[lsgozi@localhost bin]$ /usr/local/redis/bin/redis-cli
127.0.0.1:6379>//提示

則表明客戶端登錄成功

步驟六:關(guān)閉Redis服務(wù)

停止Redis實例

我們可以使用pkill redis-server

[lsgozi@localhost bin]$ pkill redis-server
[lsgozi@localhost bin]$ netstat -tunpl | grep 6379
[lsgozi@localhost bin]$ 
[lsgozi@localhost bin]$ pstree -p | grep redis
[lsgozi@localhost bin]$ 
[lsgozi@localhost bin]$ 
[lsgozi@localhost bin]$ /usr/local/redis/bin/redis-cli 
Could not connect to Redis at 127.0.0.1:6379: Connection refused
not connected> 
not connected> exit

關(guān)閉之后,發(fā)現(xiàn)6379就不再被占用了,redis的進(jìn)程也都沒有了。

客戶登陸也無法成功了。

也可以使用/usr/local/redis/bin/redis-cli shutdown,這種方法使用客戶端命令redis-cli 進(jìn)行Redis服務(wù)的停止

[lsgozi@localhost bin]]$ ./redis-server /usr/local/redis/etc/redis.conf
[lsgozi@localhost bin]$ pstree -p | grep redis
      |-redis-server(13509)-+-{redis-server}(13511)
      |           `-{redis-server}(13512)
[lsgozi@localhost bin]$ /usr/local/redis/bin/redis-cli shutdown
[lsgozi@localhost bin]$ pstree -p | grep redis
[lsgozi@localhost bin]$ 
[lsgozi@localhost bin]$ sudo netstat -tunpl | grep 6379
[lsgozi@localhost bin]$ 

當(dāng)然關(guān)閉某個服務(wù)還可以使用 killall 和 kill -9.

附錄:更多的關(guān)于 /usr/local/redis/etc/redis.conf 的配置信息

1、daemonize 如果需要在后臺運行,把該項改為yes

2、pidfile 配置多個pid的地址 默認(rèn)在/var/run/redis.pid

3、bind 綁定ip,設(shè)置后只接受來自該ip的請求

4、port 監(jiān)聽端口,默認(rèn)是6379

5、loglevel 分為4個等級:debug verbose notice warning

6、logfile 用于配置log文件地址

7、databases 設(shè)置數(shù)據(jù)庫個數(shù),默認(rèn)使用的數(shù)據(jù)庫為0

8、save 設(shè)置redis進(jìn)行數(shù)據(jù)庫鏡像的頻率。

9、rdbcompression 在進(jìn)行鏡像備份時,是否進(jìn)行壓縮

10、dbfilename 鏡像備份文件的文件名

11、Dir 數(shù)據(jù)庫鏡像備份的文件放置路徑

12、Slaveof 設(shè)置數(shù)據(jù)庫為其他數(shù)據(jù)庫的從數(shù)據(jù)庫

13、Masterauth 主數(shù)據(jù)庫連接需要的密碼驗證

14、Requriepass 設(shè)置 登陸時需要使用密碼

15、Maxclients 限制同時使用的客戶數(shù)量

16、Maxmemory 設(shè)置redis能夠使用的最大內(nèi)存

17、Appendonly 開啟append only模式

18、Appendfsync 設(shè)置對appendonly.aof文件同步的頻率(對數(shù)據(jù)進(jìn)行備份的第二種方式)

19、vm-enabled 是否開啟虛擬內(nèi)存支持 (vm開頭的參數(shù)都是配置虛擬內(nèi)存的)

20、vm-swap-file 設(shè)置虛擬內(nèi)存的交換文件路徑

21、vm-max-memory 設(shè)置redis使用的最大物理內(nèi)存大小

22、vm-page-size 設(shè)置虛擬內(nèi)存的頁大小

23、vm-pages 設(shè)置交換文件的總的page數(shù)量

24、vm-max-threads 設(shè)置VM IO同時使用的線程數(shù)量

25、Glueoutputbuf 把小的輸出緩存存放在一起

26、hash-max-zipmap-entries 設(shè)置hash的臨界值

27、Activerehashing 重新hash

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Redis過期時間的設(shè)計與實現(xiàn)代碼

    Redis過期時間的設(shè)計與實現(xiàn)代碼

    在?Redis?中,鍵的過期時間設(shè)計與實現(xiàn)是一個重要的功能,這使得?Redis?可以自動刪除在指定時間后不再需要的鍵,下面詳細(xì)介紹?Redis?過期時間的設(shè)計和實現(xiàn),包括設(shè)置過期時間、過期鍵的存儲結(jié)構(gòu)、過期鍵的刪除策略等,需要的朋友可以參考下
    2024-08-08
  • 使用redis分布式鎖解決并發(fā)線程資源共享問題

    使用redis分布式鎖解決并發(fā)線程資源共享問題

    這篇文章主要介紹了使用redis分布式鎖解決并發(fā)線程資源共享問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • easyswoole3.5 redis使用詳細(xì)解析

    easyswoole3.5 redis使用詳細(xì)解析

    這篇文章主要介紹了easyswoole3.5 redis使用的相關(guān)知識,本文通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • Redis如何正確關(guān)閉和開啟持久化

    Redis如何正確關(guān)閉和開啟持久化

    本文主要介紹了Redis如何正確關(guān)閉和開啟持久化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Mac中Redis服務(wù)啟動時錯誤信息:NOAUTH Authentication required

    Mac中Redis服務(wù)啟動時錯誤信息:NOAUTH Authentication required

    這篇文章主要介紹了Mac中使用Redis服務(wù)啟動時錯誤信息:"NOAUTH Authentication required"問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python腳本實現(xiàn)Redis未授權(quán)批量提權(quán)

    python腳本實現(xiàn)Redis未授權(quán)批量提權(quán)

    這篇文章主要給大家介紹了關(guān)于利用python腳本實現(xiàn)redis未授權(quán)批量提權(quán)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • Redis?BigKey的問題解決

    Redis?BigKey的問題解決

    本文主要介紹了Redis?BigKey的問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • redis監(jiān)聽key過期事件的詳細(xì)步驟

    redis監(jiān)聽key過期事件的詳細(xì)步驟

    本文主要介紹了redis監(jiān)聽key過期事件的詳細(xì)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • SpringBoot讀寫Redis客戶端并實現(xiàn)Jedis技術(shù)切換功能

    SpringBoot讀寫Redis客戶端并實現(xiàn)Jedis技術(shù)切換功能

    這篇文章主要介紹了SpringBoot讀寫Redis客戶端并實現(xiàn)技術(shù)切換功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • redis通過6379端口無法連接服務(wù)器(redis-server.exe閃退)

    redis通過6379端口無法連接服務(wù)器(redis-server.exe閃退)

    這篇文章主要介紹了redis通過6379端口無法連接服務(wù)器(redis-server.exe閃退),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05

最新評論