redis簡單使用

介紹

Redis是一個開源(BSD許可),內存存儲的數據結構服務器,可用做數據庫,高速緩存和消息隊列代理。它支持字符串、哈希表、列表、集合、有序集合,位圖,hyperloglogs等數據類型。內置複製、Lua腳本、LRU收回、事務以及不一樣級別磁盤持久化功能,同時經過Redis Sentinel提供高可用,經過Redis Cluster提供自動分區
redis的優勢是:
異常快 - Redis很是快,每秒可執行大約110000次的設置(SET)操做,每秒大約可執行81000次的讀取/獲取(GET)操做。  
支持豐富的數據類型 - Redis支持開發人員經常使用的大多數數據類型,例如列表,集合,排序集和散列等等。這使得Redis很容易被用來解決各類問題,由於咱們知道哪些問題能夠更好使用地哪些數據類型來處理解決。  
操做具備原子性 - 全部Redis操做都是原子操做,這確保若是兩個客戶端併發訪問,Redis服務器能接收更新的值。  
多實用工具 - Redis是一個多實用工具,可用於多種用例,如:緩存,消息隊列(Redis本地支持發佈/訂閱),應用程序中的任何短時間數據,例如,web應用程序中的會話,網頁命中計數等。

安裝

1 yum方式
yum install epel-release  # 安裝epel-release庫
yum install redis         # 安裝redis
systemctl start redis [centos7下] /etc/rc.d/init.d/redis start [centos6下] 
redis-server /etc/redis.conf # 帶配置文件啓動
vim /etc/redis.conf

bind 127.0.0.1 改成 bind 0.0.0.0  # 開啓遠程訪問
requirepass yourpasswd # 設置訪問密碼

redis-cli -h host -p port -a password # 客戶端訪問
推薦使用桌面工具Redis Desktop Manager
下載地址爲:https://redisdesktop.com/download
2 源碼安裝
yum group install "Development Tools"
wget http://download.redis.io/releases/redis-3.0.3.tar.gz
tar zxf redis-3.0.3.tar.gz
cd redis-3.0.3
make
make install
cd utils/
./install_server.sh

Selected config:
Port           : 6379
Config file    : /etc/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli


redis.conf requirepass 修改密碼
cd src/
./redis-server # 啓動
./redis-cli -p 6379 -a passwd # 客戶端登錄

redis簡單命令

1 檢測是否在工做
127.0.0.1:6379> ping
PONG

2 獲取配置
語法格式:CONFIG GET CONFIG_SETTING_NAME
127.0.0.1:6379> config get *    # 獲取全部配置
  1) "dbfilename"
  2) "dump.rdb"
....

3 編輯配置
語法格式:CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE
127.0.0.1:6379> CONFIG SET loglevel "notice"
OK
127.0.0.1:6379> CONFIG GET loglevel
1) "loglevel"
2) "notice"
127.0.0.1:6379>

4 數據類型
    a 字符串 Redis中的字符串是一個字節序列
    127.0.0.1:6379> set name 'lyon'
    OK
    127.0.0.1:6379> get name
    "lyon"
    
    b 散列/哈希 Redis散列/哈希(Hashes)是鍵值對的集合。Redis散列/哈希是字符串字段和    字符串值之間的映射。所以,它們用於表示對象。
    HMSET ukey username "lyon" password "123" points 200

    c Redis列表是字符串列表,按插入順序排序。
    127.0.0.1:6379> lpush mylist memcached
    (integer) 1
    127.0.0.1:6379> lpush mylist redis
    (integer) 2
    127.0.0.1:6379> lpush mylist mongodb
    (integer) 3
    127.0.0.1:6379> lpush mylist sqlite
    (integer) 4
    127.0.0.1:6379> lrange mylist 0 5
    1) "sqlite"
    2) "mongodb"
    3) "redis"
    4) "memcached"
    
    d 集合
    Redis集合是字符串的無序集合,集合具備惟一屬性
    127.0.0.1:6379> sadd list2 memcached
    (integer) 1
    127.0.0.1:6379> sadd list2 redis
    (integer) 1
    127.0.0.1:6379> sadd list2 redis
    (integer) 0
    127.0.0.1:6379> smembers list2
    1) "redis"
    2) "memcached"
    
    e 可排序集合
    Redis可排序集合相似於Redis集合,是不重複的字符集合。 不一樣之處在於,排序集合的每一個成員都與分數相關聯,這個分數用於按最小分數到最大分數來排序的排序集合。雖然成員是惟一的,但分數值能夠重複。
    127.0.0.1:6379> zadd myset 1 redis
    (integer) 1
    127.0.0.1:6379> zadd myset 2 memcached
    (integer) 1
    127.0.0.1:6379> zadd myset 2 memcached
    (integer) 0
    127.0.0.1:6379> ZRANGEBYSCORE myset 0 100
    1) "redis"
    2) "memcached"
相關文章
相關標籤/搜索