1. 程式人生 > >redis學習教程一《Redis的安裝和配置》

redis學習教程一《Redis的安裝和配置》

遠程服務 name 工具 列表 端口號 裏的 redis服務器 映射 tin

redis學習教程一《Redis的安裝和配置》

Redis的優點

以下是Redis的一些優點。

  • 異常快 - Redis非常快,每秒可執行大約110000次的設置(SET)操作,每秒大約可執行81000次的讀取/獲取(GET)操作。
  • 支持豐富的數據類型 - Redis支持開發人員常用的大多數數據類型,例如列表,集合,排序集和散列等等。這使得Redis很容易被用來解決各種問題,因為我們知道哪些問題可以更好使用地哪些數據類型來處理解決。
  • 操作具有原子性 - 所有Redis操作都是原子操作,這確保如果兩個客戶端並發訪問,Redis服務器能接收更新的值。
  • 多實用工具 - Redis是一個多實用工具,可用於多種用例,如:緩存,消息隊列(Redis本地支持發布/訂閱),應用程序中的任何短期數據,例如,web應用程序中的會話,網頁命中計數等。


環境:
Ubuntu4.0以上系統
jdk1.6以上


一:在Ubuntu上安裝redis

註:需先裝java jdk環境
檢查是否安裝:打開終端 java -version 顯示對應的版本即為安裝

1.1:安裝jdk

方式1:打開終端 :sudo apt-get install openjdk-7-jdk 要求聯網

方式2:未聯網的情況下安裝jdk http://www.cnblogs.com/madyina/p/3705520.html 參照即可

完成後:檢測 java -version顯示版本為安裝成功

1.2:安裝redis

1:sudo apt-get update
2:sudo apt-get install redis-server 開始安裝
註:sudo需要root權限 提示需求root管理員操作時:切換到root管理員即可
2.1: su root 提示輸入root和密碼即可
root密碼忘記修改方式:
終端輸入命令 sudo passwd,然後輸入當前用戶的密碼,enter,終端會提示我們輸入新的密碼並確認,此時 的密碼就是root新密碼。修改成功後,輸入命令 su root,再輸入新的密碼就ok了。
1.3:啟動redis

1:redis-server

2:檢測是否已啟動 redis-cli 提示reds ip 端口號為正常啟動 ping是否能正常連接

1.4:redis配置

在Redis中,在Redis的根目錄下有一個配置文件(redis.conf
)。當然您可以通過Redis CONFIG命令獲取和設置所有的 Redis配置。

語法
以下是Redis中的CONFIG命令的基本語法。

CONFIG GET CONFIG_SETTING_NAME
示例:CONFIG GET loglevel
要獲取所有配置設置,請使用*代替CONFIG_SETTING_NAME

要更新配置,可以直接編輯redis.conf文件,也可以通過CONFIG set

命令更新配置。

語法
以下是CONFIG SET命令的基本語法。

CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE
示例:CONFIG SET loglevel "notice"

二:安裝redis可視化工具<redis-desktop-manager>

網址:https://pan.baidu.com/s/1cA3jWU下載安裝即可
安裝教程:http://blog.csdn.net/u013410747/article/details/51706964

三: 數據類型

1: 字符串
Redis中的字符串是一個字節序列。Redis中的字符串是二進制安全的,這意味著它們的長度不由任何特殊的終止字符決定。
因此,可以在一個字符串中存儲高達512兆字節的任何內容。 示例: set name "yiibai.com"

查詢:get name 關鍵字:get
在上面的示例中,setget是Redis命令,name是Redis中使用的鍵,yiibai.com是存儲在Redis中的字符串 的值。註 - Redis命令不區分大小寫,如SET,Setset都是同一個命令。字符串值的最大長度為 512MB。

2:散列/哈希/對象
Redis散列/哈希(Hashes)是鍵值對的集合。Redis散列/哈希是字符串字段和字符串值之間的映射。因此,它們用於表示對
象。
示例: HMSET ukey username "yiibai" password "passswd123" points 200

查詢: HGETALL ukey 關鍵字:hgetall 在上述示例中,散列/哈希數據類型用於存儲包含用戶的基本信息的用戶對象。這裏HMSETHGETALL是Redis的命令,
ukey是鍵的名稱。每個散列/哈希可以存儲多達2^32 - 1個健-值對(超過40億個)。

3:列表
Redis列表只是字符串列表,按插入順序排序。您可以向Redis列表的頭部或尾部添加元素。 有序存在重復對象
示例:lpush alist redis
lpush alist mongodb
lpush alist sqlite

查詢:lrange alist 0 10 關鍵字:lrange 上訴示例中,向alist添加了三個字符串對象,列表的最大長度為2^32 - 1個元素(4294967295,每個列表可容納超
40億個元素)。

4:集合
Redis集合是字符串的無序集合。在Redis中,您可以添加,刪除和測試成員存在的時間O(1)復雜性。無序不存在重復對象
示例: sadd yiibailist redis
sadd yiibailist mongodb
sadd yiibailist sqlite
sadd yiibailist sqlite 註:添加失敗 重復sqlite

查詢:smembers yiibailist 關鍵字:smembers
上訴示例中 註意 - 在上面的示例中,sqlite被添加了兩次,但是由於集合的唯一屬性,所以它只算添加一次。一個
集合中的最大成員數量為2^32 - 1(即4294967295,每個集合中元素數量可達40億個)個。
5:可排序集合
Redis可排序集合類似於Redis集合,是不重復的字符集合。 不同之處在於,排序集合的每個成員都與分數相關聯,這個
分數用於按最小分數到最大分數來排序的排序集合。雖然成員是唯一的,但分數值可以重復
示例: zadd ulist 0 redis
zadd ulist 1 redis1
zadd ulist 2 redis2
查詢:ZRANGEBYSCORE ulist 關鍵字:ZRANGEBYSCORE
上訴示例中 插入是 0 1 2 查詢時,倒序顯示


四:在遠程服務器上運行命令 (連接遠程服務器上的redis)

要在Redis遠程服務器上運行命令,需要通過客戶端redis-cli連接到服務器
示例:redis-cli -h host -p port -a password
以下示例顯示如何連接到Redis遠程服務器,host為ip號 port為端口號 password為密碼


五:Redis鍵命令

Redis鍵命令用於管理Redis中的鍵。以下是使用redis鍵命令的語法。
語法:
COMMAND KEY_NAME command:表示基本命令 基本命令如下
下表列出了與鍵相關的一些基本命令。
編號命令描述
1 DEL key 此命令刪除一個指定鍵(如果存在)。
2 DUMP key 此命令返回存儲在指定鍵的值的序列化版本。
3 EXISTS key 此命令檢查鍵是否存在。
4 EXPIRE key seconds 設置鍵在指定時間秒數之後到期/過期。
5 EXPIREAT key timestamp 設置在指定時間戳之後鍵到期/過期。這裏的時間是Unix時間戳格式。
6 PEXPIRE key milliseconds 設置鍵的到期時間(以毫秒為單位)。
7 PEXPIREAT key milliseconds-timestamp 以Unix時間戳形式來設置鍵的到期時間(以毫秒為單位)。
8 KEYS pattern 查找與指定模式匹配的所有鍵。
9 MOVE key db 將鍵移動到另一個數據庫。
10 PERSIST key 刪除指定鍵的過期時間,得永生。
11 PTTL key 獲取鍵的剩余到期時間。
12 RANDOMKEY 從Redis返回一個隨機的鍵。
13 RENAME key newkey 更改鍵的名稱。
14 PTTL key 獲取鍵到期的剩余時間(以毫秒為單位)。
15 RENAMENX key newkey 如果新鍵不存在,重命名鍵。
16 TYPE key 返回存儲在鍵中的值的數據類型。

redis學習教程一《Redis的安裝和配置》