- Redis 簡介
redis是一種開源的、基於內存的、可持久化的、高性能的Key-Value數據存儲系統。
redis能做什么?
持久化存儲 高速緩存 消息中間件
2.Redis 安裝配置
-
- 高性能(內存存儲、僅在需要時持久化到硬盤)
- 數據類型豐富 (string Hash List Set SortedSet)
- 支持事務處理
- 批量操作
- 支持設置Key的有效期
- 支持主從復制(Master-Slave)和故障自動遷移
- 支持大規模集群部署
- 支持Pub/Sub消息通訊機制
- 支持Lua腳本實現復制的數據庫操作
3.Redis 常用命令
redis 官網下載壓縮包 我本地 解壓位置 D盤
cmd 進入dos 命令行 進入D盤 程序的根目錄,
redis-server.exe --service-install ( redis-server.exe --service-install --prot 6379)(redis-server.exe --service-install --service-name redis001 --prot 6390 --requirepass 12345) 安裝 #實例名稱 redis001 端口 6390 密碼 12345
redis-server.exe --service-uninstall (redis-server.exe --service-uninstall --service-name redis) 卸載
redis-cli.exe -h localhost -p 6379 -a 12345 #6379 是redis默認的端口號 -a 指密碼
key * # 數據實例數據條數
Server 命令
select / dbsize /flushdb|flushall /save|bgsave config get / config set / config rewrite / shutdown
key 命令
keys / del /exists / rename / type / expire|persist|ttl / move|migrate
數據類型操作命令
String (字符串) Hash(哈希表) list (列表) set (集合) sortedset(有序集合)
4.Redis desktop Manager 桌面可視化工具 (自行安裝)
登錄成功后 一個數據庫實例 下面有16個數據庫
5.Redis PipeLine redis管道技術
redis 管道技術 提高效率 再不是用管道技術是 客戶端A向數據庫中插入數據 會阻塞等待 多個客戶端就會出現卡死現象
使用管道技術后 可以批量操作 提高效率 避免卡死
6. Redis 事務
原子性 一致性 隔離性 持久性
7.Redis 消息通信
發布者——>頻道——>訂閱者 (多對多的關系 ) 發布者 發布消息到頻道 訂閱者 訂閱某個頻道 頻道存儲消息
cmd 命令
redis-cli.exe -h localhost -p 6380 -a 12345
subscribe cctv # cctv 頻道
cmd 啟動另個一redis redis-cli.exe -h localhost -p 6381 -a 12345
publis cctv hello # cctv 頻道 hello 發送的消息
8.Redis 主從庫與哨兵集群
一個主數據庫 多個從數據庫 (備份容錯 一主多從 自動同步)
redis 主從庫的配置:以下兩個方法選擇其中一個就可以了 這兩種方法都是設置從數據庫 不需要對主數據庫做設置 (配置文件 必須是ip )
1.配置文件 redis.windows.conf文件:
slaveof <masterip> <masterport> # 主庫的ip和端口號
masterauth <master-password> # 主庫的密碼
slave-read-only yes # 從庫只讀(默認)
2. slaveof 命令
slaveof host port #將當期庫設置為host /port 對應實例的從庫
slaveof no one #取消當期庫的從庫身份 (已同步的數據保留)
修改配置文件實現主從同步: cmd 命令使用配置文件安裝 redis-server.exe --service-install redis.windows.conf --service-name redisxxx --port 6390
提示 redis 安裝成功。
cmd 命令行 info replication 查看配置信息
命令方式配置主從數據庫:安裝好新的redis數據庫實例 通過命令行安裝 redis-cli.exe --service-install redis.windows.conf --service-name reids003 --prot 6890
命令行進入redis 客戶端 redis-cli.exe -h localhost -p 6890
info replication 命令 可以看到 role:master ,然后 slaveof 127.0.0.1 6890
再次使用 info replication 命令 看到 role :slave