Redis:02---安裝Redis(Linux+Windows+Docker)

Linux安裝:

一、安裝方式1(下載源碼編譯安裝)

第一步:從下面的網址中下載Redis最新穩定版本的源代碼

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

第二步:下載完之后解壓,建立一個軟鏈接指向于redis-stable,然后進入軟鏈接目錄

sudo tar xzf redis-stable.tar.gz  #解壓
ln -s redis-stable redis          #建立軟鏈接
cd redis                          #進入軟鏈接目錄

第三步:編譯、安裝

  • 編譯之前確保操作系統已經安裝了gcc

  • 第三步:輸入make開始進行編譯,編譯后在Redis源代碼目錄的src文件夾中可以找到若干個可執行程序

sudo make && make install

安裝好之后看到

?

二、安裝方式2(通過系統軟件包管理器安裝)

  • 除了上面的手工編譯外,還可以使用操作系統中的軟件包管理器來安裝Redis,例如ubuntu中使用下面的命令進行安裝:

sudo apt-get install redis-server

? ? ? ? ? centos安裝命令:

sudo yum install redis-server

? ? ? ? ??

Windows安裝:

一、在Windows系統下運行Redis的弊端

  • Redis在將數據庫持久化到硬盤的時候,需要用到fork系統調用,而Windows并不支持這個調用。在缺少fork調用的情況下,Redis在執行持久化操作期間就只能阻塞所有客戶端,直到持久化操作執行完畢為止

  • 由Dusan Majkic創建的非官方移植版Redis提供了Redis 2.4.5的預編譯二進制文件,但這個版本也會在執行持久化操作時阻塞客戶端

二、在Windows下安裝Redis

  • 第一步:訪問https://github.com/dmajkic/redis/downloads,根據你正在使用的Windows版本,下載適合自己的預編譯Redis。此處我們下載第一個壓縮文件

  • 第二步:下載完成之后,解壓.zip文件,解壓之后進入64bit目錄。可以看到這個里面有redis的工具

redis-serverRedis服務器
redis-cliRedis命令行客戶端
redis-benchmarkRedis性能測試工具
redis-check-aofAOF文件修復工具
redis-check-dumpRDB文件檢查工具
  • 第三步:我們雙擊redis-server,就可以啟動Redis服務器了

Docker安裝:

1、查看可用的 Redis 版本

訪問 Redis 鏡像庫地址:https://hub.docker.com/_/redis?tab=tags。

可以通過 Sort by 查看其他版本的 Redis,默認是最新版本?redis:latest

你也可以在下拉列表中找到其他你想要的版本:

此外,我們還可以用?docker search redis?命令來查看可用版本:

$ docker search  redis
NAME                      DESCRIPTION                   STARS  OFFICIAL  AUTOMATED
redis                     Redis is an open source ...   2321   [OK]       
sameersbn/redis                                         32                   [OK]
torusware/speedus-redis   Always updated official ...   29????????     [OK]
bitnami/redis             Bitnami Redis Docker Image    22                   [OK]
anapsix/redis             11MB Redis server image ...   6                    [OK]
webhippie/redis           Docker images for redis       4                    [OK]
clue/redis-benchmark      A minimal docker image t...   3                    [OK]
williamyeh/redis          Redis image for Docker        3                    [OK]
unblibraries/redis        Leverages phusion/baseim...   2                    [OK]
greytip/redis             redis 3.0.3                   1                    [OK]
servivum/redis            Redis Docker Image            1                    [OK]...

2、取最新版的 Redis 鏡像

這里我們拉取官方的最新版本的鏡像:

$ docker pull redis:latest

3、查看本地鏡像

使用以下命令來查看是否已安裝了 redis:

$ docker images

在上圖中可以看到我們已經安裝了最新版本(latest)的 redis 鏡像。

4、運行容器

安裝完成后,我們可以使用以下命令來運行 redis 容器:

$ docker run -itd --name redis-test -p 6379:6379 redis

參數說明:

  • -p 6379:6379:映射容器服務的 6379 端口到宿主機的 6379 端口。外部可以直接通過宿主機ip:6379 訪問到 Redis 的服務。

5、安裝成功

最后我們可以通過?docker ps?命令查看容器的運行信息:

接著我們通過 redis-cli 連接測試使用 redis 服務。

$ docker exec -it redis-test /bin/bash

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/444525.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/444525.shtml
英文地址,請注明出處:http://en.pswp.cn/news/444525.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++:10---再議拷貝構造函數

一、概念 使用一個已經存在的對象,去構造(初始化)另一個對象二、格式 參數加上const&,因為拷貝構造函數在幾種情況下都會被隱式地使用,因此拷貝構造函數不應該是explict的const:防止函數內部修改值&:防止無限循環拷貝類名(類名 const& 參數名) { 函數體 }三、…

人的思維謬誤與心理學效應

啟發法 用一個容易的問題代替難以回答的真正問題。這個容易的問題的答案就是對真正問題的啟發,但啟發經常和真正的答案差得很遠,而人卻往往把啟發當成了真正問題的答案。 接下來介紹和啟發法相關的心理效應和謬誤。每一個謬誤都會注明真正的問題是什么…

C++:07---this指針

一、this指針介紹 概念:this指針是成員函數的一個隱式參數,在類中本質上就是對象的指針(常量指針)特點:在成員函數中可通過this指針區別成員變量與形參變量this可以顯式調用示例代碼:class Cperson { private: int age; float height; public: void InitPerson(int age,flo…

Redis :01---Redis簡介和安裝

一、Redis簡介 Redis官網:https://redis.io/ Redis是一種基于鍵值對(key-value)的NoSQL數據庫 與很多鍵值對數據庫不同的是,Redis中的值可以是由string(字符串)、hash(哈希)、 list&…

215. 數組中的第K個最大元素 BFPRT最牛解法

在未排序的數組中找到第 k 個最大的元素。請注意,你需要找的是數組排序后的第 k 個最大的元素,而不是第 k 個不同的元素。 示例 1: 輸入: [3,2,1,5,6,4] 和 k 2 輸出: 5 示例 2: 輸入: [3,2,3,1,2,4,5,5,6] 和 k 4 輸出: 4 說明: 你可以假設 k 總是…

C++: 06---構造函數析構函數

拷貝構造函數: 用一個已經存在的對象來生成一個相同類型的新對象。(淺拷貝)默認的拷貝構造函數: 如果自定義了拷貝構造函數,編譯器就不在生成默認的拷貝構造函數。 如果沒有自定義拷貝構造函數,但在代碼中用到了拷貝構造函數,編譯器會生成默認…

leetcode371. 兩整數之和 不用+號做加法

不使用運算符 和 - ,計算兩整數 ???????a 、b ???????之和。 示例 1: 輸入: a 1, b 2 輸出: 3 示例 2: 輸入: a -2, b 3 輸出: 1 思路:模擬加法器 二進制不考慮進位:000,010,110,是…

C++:05---class和struct

C++被稱為“C with class”,可見在C++中class是多么重要,與class類似的一個結構就是struct了,struct最早是在C語言中出現的,在C++中對struct的功能也進行了擴展。 class : public(公有):在類內外、派生類中都可被訪問protected(保護):希望與派生類共享但是不想被公共…

leetcode34. 在排序數組中查找元素的第一個和最后一個位置

給定一個按照升序排列的整數數組 nums,和一個目標值 target。找出給定目標值在數組中的開始位置和結束位置。 你的算法時間復雜度必須是 O(log n) 級別。 如果數組中不存在目標值,返回 [-1, -1]。 示例 1: 輸入: nums [5,7,7,8,8,10], target 8 輸…

C++:11---友元函數、友元類

一、友元(friend) 概念:通過友元,打破了類的封裝性,可以訪問類內的所有成員分類:友元函數、友元類二、友元函數 概念:友元函數是一個普通函數,不屬于類,但需要在類內表明友元關系 友元函數可訪問類內所有成員,但類不可以訪問友元函數…

leetcode75. 顏色分類

給定一個包含紅色、白色和藍色,一共 n 個元素的數組,原地對它們進行排序,使得相同顏色的元素相鄰,并按照紅色、白色、藍色順序排列。 此題中,我們使用整數 0、 1 和 2 分別表示紅色、白色和藍色。 注意: 不能使用代碼…

C++:12---運算符重載

一、概念 對已有的運算符重新進行定義,賦予其另一種功能,以適應不同的數據類型重載的運算符是具有特殊名字的函數,該函數也有返回值、參數列表、函數體二、運算符重載的3種實現方式 成員函數:私有、公有、保護都可以友元函數:同上全局函數:只能訪問公有的三、運算符重載的…

Redis:03---Redis的啟動與配置參數大全

一、Redis的可執行文件當我們安裝完Redis之后,src和/usr/local/bin目錄下提供了下面這些可執行程序,我們稱之為Redis Shell:redis-serverRedis服務器redis-cliRedis命令行客戶端redis-benchmarkRedis性能測試工具redis-check-aofRedis AOF持久…

leetcode80. 刪除排序數組中的重復項 II

給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素最多出現兩次,返回移除后數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸入數組并在使用 O(1) 額外空間的條件下完成。 示例 1: 給定 nums [1,1,1,2…

Redis:04---鍵的基本命令(上)

一、KEYS:全量遍歷鍵KEYS pattern功能:用來獲取此數據庫中所有的鍵名注意事項:KEYS命令需要遍歷Redis中的所有鍵,當鍵的數量較多時會影響性能,不建議在生產環境下使用支持glob風格通配符格式,見下表&#x…

leetcode67. 二進制求和

給定兩個二進制字符串,返回他們的和(用二進制表示)。 輸入為非空字符串且只包含數字 1 和 0。 示例 1: 輸入: a "11", b "1" 輸出: "100" 示例 2: 輸入: a "1010", b "1011" 輸出…

C++:13---繼承(單一繼承、多重繼承、多級繼承、菱形繼承、虛繼承)

一、基類與派生類的概念 基類(父類):在繼承關系中處于上層的類派生類(子類):在繼承關系中處于下層的類class A;class B;class C:public A //C為A的子類,A為C的父類{};class D:public A,public B //D為A和B的子類,A和B均為D的父類{};二、類派生列表 派生類通過派生類列…

(十三) 深入淺出TCPIP之setsockopt參數詳解

在socket編程中我們會經常用到setsockopt這個函數,那么本節我們將對這個函數的參數和使用做說明: 首先看下函數原型: int setsockopt( int socket, int level, int option_name,const void *option_value, size_t ,ption_len); 第…

22種編程語言新年快樂

請允許我用22種編程語言&#xff0c;祝大家新年快樂 C語言&#xff1a;printf(“祝大家新年快樂”); C : cout<<“祝大家新年快樂”; OC: NSLog(“祝大家新年快樂”) QBasic : Print “祝大家新年快樂” Asp : Response.Write “祝大家新年快樂” PHP : echo “祝大家新年…

Redis:05---鍵的基本命令(下) 生存周期

一、設置鍵生存/過期時間生存時間&#xff08;Time To Live&#xff0c;TTL&#xff09;&#xff1a;在經過指定的秒數或者毫秒數之后&#xff0c;服務器就會自動刪除生存時間為0的鍵過期時間&#xff08;expire time&#xff09;&#xff1a;是一個UNIX時間戳&#xff0c;當鍵…