最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解在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' ;)

進入src進行安裝:

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ù):

首先進入剛才安裝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的下的配置文件進行啟動(圖中紅線部分)。

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

這里我們先用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被某個進程占用,但是看不到進程名稱。

至此,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的進程也都沒有了。

客戶登陸也無法成功了。

也可以使用/usr/local/redis/bin/redis-cli shutdown,這種方法使用客戶端命令redis-cli 進行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進行數(shù)據(jù)庫鏡像的頻率。

9、rdbcompression 在進行鏡像備份時,是否進行壓縮

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ù)進行備份的第二種方式)

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 通過 RDB 方式進行數(shù)據(jù)備份與還原的方法

    Redis 通過 RDB 方式進行數(shù)據(jù)備份與還原的方法

    這篇文章主要介紹了Redis 通過 RDB 方式進行數(shù)據(jù)備份與還原,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Redis使用Lua腳本命令詳解

    Redis使用Lua腳本命令詳解

    這篇文章主要為大家介紹了Redis使用Lua腳本命令詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • Redis中管道操作pipeline的實現(xiàn)

    Redis中管道操作pipeline的實現(xiàn)

    RedisPipeline是一種優(yōu)化客戶端與服務(wù)器通信的技術(shù),通過批量發(fā)送和接收命令減少網(wǎng)絡(luò)往返次數(shù),提高命令執(zhí)行效率,本文就來介紹一下Redis中管道操作pipeline的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • Redis消息隊列的三種實現(xiàn)方式

    Redis消息隊列的三種實現(xiàn)方式

    本文主要介紹了Redis消息隊列的三種實現(xiàn)方式,主要包括List實現(xiàn)消息隊列,PubSub消息隊列,Stream消息隊列,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • redis啟動報錯Can‘t?open?the?log?file:?No?such?file?or?directory

    redis啟動報錯Can‘t?open?the?log?file:?No?such?file?or?d

    這篇文章主要介紹了redis啟動報錯Can‘t?open?the?log?file:?No?such?file?or?directory問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • RedisTemplate 實現(xiàn)基于Value 操作的簡易鎖機制(示例代碼)

    RedisTemplate 實現(xiàn)基于Value 操作的簡易鎖機制(示例代碼)

    本文將介紹如何使用 RedisTemplate 的 opsForValue().setIfAbsent() 方法來實現(xiàn)一種簡單的鎖機制,并提供一個示例代碼,展示如何在 Java 應(yīng)用中利用這一機制來保護共享資源的訪問,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • window手動操作清理redis緩存的技巧總結(jié)

    window手動操作清理redis緩存的技巧總結(jié)

    在本篇文章中小編給大家分享了關(guān)于window環(huán)境手動操作清理redis緩存的方法和技巧,有興趣的朋友們可以跟著學(xué)習(xí)下。
    2019-07-07
  • 解析Redis的緩存類型

    解析Redis的緩存類型

    本文主要介紹了Redis的緩存類型,主要介紹了4種緩存,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Redis分布式限流的幾種實現(xiàn)

    Redis分布式限流的幾種實現(xiàn)

    分布式限流是指通過將限流策略嵌入到分布式系統(tǒng)中,以控制流量或保護服務(wù),本文就來介紹一下Redis分布式限流的幾種實現(xiàn),感興趣的可以了解一下
    2023-12-12
  • Redis過期數(shù)據(jù)的刪除策略詳解

    Redis過期數(shù)據(jù)的刪除策略詳解

    Redis 是一個kv型數(shù)據(jù)庫,我們所有的數(shù)據(jù)都是存放在內(nèi)存中的,但是內(nèi)存是有大小限制的,不可能無限制的增量,這篇文章主要介紹了Redis過期數(shù)據(jù)的刪除策略,需要的朋友可以參考下
    2023-08-08

最新評論

建昌县| 保靖县| 镇雄县| 逊克县| 沈丘县| 淮滨县| 张家界市| 太仓市| 淅川县| 甘孜县| 岑巩县| 东源县| 石门县| 樟树市| 句容市| 高碑店市| 巴彦淖尔市| 房山区| 晋州市| 吴堡县| 塘沽区| 行唐县| 西安市| 镇远县| 永春县| 土默特左旗| 延津县| 建昌县| 武山县| 平武县| 崇仁县| 大安市| 遂宁市| 多伦县| 隆尧县| 长宁县| 枣阳市| 河西区| 玉山县| 新兴县| 综艺|