- 操作redis的key的命令
命令 |
描述 |
del key |
刪除key |
exists key |
檢查key是否存在 |
expire key 秒 |
設置key過期時間,單位秒 |
persist key |
移除key的過期時間,key將永久保存 |
ttl key |
返回key的剩余過期時間,單位秒。永久保存返回 -1 |
keys *|pattern |
查找所有符合條件的key。可以模糊匹配如*,? |
move key db |
將當前數據庫的key移動到指定的數據庫中 |
rename key newkey |
修改key的名稱 |
type key |
返回key 所存儲的值的類型 |
- Redis高級命令
命令 |
描述 |
select 數據庫索引 |
redis中一個整庫默認分成了16個子數據庫,索引為0-15.默認為0 |
dbsize |
查看當前數據庫的key的個數 |
info |
獲取當前數據庫的信息 |
flushdb |
清空當前數據庫 |
flushall |
清空所有的數據庫 |
echo |
打印命令,如 echo ‘hello world’ |
config get *|pattern |
獲取所有配置的信息 |
ping |
檢測redis服務是否啟動。如:pong代表啟動 |
- Redis的安全性
默認redis是沒有密碼直接訪問,為了提高安全性,設置redis密碼。
方式一:通過命令方式配置密碼。一旦服務器重啟,密碼重置。
|
方式二:redis.conf配置文件中配置密碼
1.編輯redis.conf 配置文件設置redis密碼
cd /usr/local/redis/etc vim redis.conf //找到redis.conf文件中的391行,進行密碼設置 # requirepass foobared requirepass 密碼 |
2. 密碼設置完成,重新啟動redis服務器
1. 停止redis服務器 pkill redis-server 2. 啟動redis服務器 ./redis-server /usr/local/redis/etc/redis/conf |
- 通過設置的密碼,連接redis服務器
方式一: 1. 啟動redis客戶端 ./redis-cli 2. 輸入keys * 發現出現錯誤 (error) NOAUTH Authentication required. (沒有權限,輸入密碼) 3. auth 密碼 OK 代表成功連接 方式二: 啟動客戶端時直接輸入密碼 命令: ./redis-cli -a 密碼 |
- Redis的主從復制
4.1. 主從復制是什么?
主從復制指的是將一台Redis服務器的數據復制到其他的Redis服務器。 前者稱為主服務器(Master),后者稱為從服務器(Slave)。 數據復制是單向的,只能從主服務器到從服務器。 |
4.2. 為什么需要主從復制?
1. 讀寫分離 (分擔服務器壓力) 2. 單點故障 3. 高可用的基石 (哨兵和集群) |
4.3. 特點
1. 主數據庫可以進行讀寫操作,當讀寫操作導致數據變化時會自動將數據同步給從數據庫。 2. 從數據庫一般都是只讀的,並且接收主數據庫同步過來的數據。 3. 一個master可以擁有多個slave,但是一個slave只能對應一個master。 4. slave掛了不影響其他slave的讀和master的讀和寫,重新啟動后會將數據從master同步過來。 5. master掛了以后,不影響slave的讀,但redis不再提供寫服務,master重啟后redis將重新對外提供寫服務。 6. master掛了以后,不會在slave節點中重新選一個master。 |
4.4. 主從復制配置步驟
1. 從服務器需要配置 (默認Redis服務器是主服務器)
修改配置文件redis.conf,將主服務器改成從服務器
1: 編輯redis.conf vim /usr/local/redis/etc/redis.conf 2: 進入redis.conf文件 第一步:找到205行,設置從服務器 # slaveof <masterip> <masterport> slaveof 主服務的ip 主服務器的端口 第二部:指定主服務密碼(如果主服務器沒有密碼可以省略) masterauth 主服務密碼 |
2:主服務器需要放行端口號6379
查看從服務器狀態:info 如果發現從服務連接主服務顯示master_link_status:down 解決:對主服務器配置 1:關閉防火牆 service iptables stop 2:放行6379端口 vim /etc/sysconfig/iptables |