天天看點

NoSQL--Redis 配置檔案

一、 redis  conf 參數配置:

 1、#是否作為守護程序運作:作為背景程序運作。

daemonize yes

#如以背景程序運作,則需指定一個pid,預設為/var/run/redis.pid

pidfile redis.pid

2、#綁定主機IP,預設值為127.0.0.1。

隻能以127.0.0.1通路redis,是以開發環境要注釋掉,如下:

#bind 127.0.0.1

3、#Redis預設監聽端口

port 6379

4、#用戶端閑置多少秒後,斷開連接配接,預設為300(秒)

timeout 300

5、#日志記錄等級:

有4個可選值,debug,verbose(預設值),notice,warning

loglevel verbose

#指定日志輸出的檔案名,預設值為stdout,也可設為/dev/null屏蔽日志

logfile stdout

6、#可用資料庫數,預設值為16,預設資料庫為0

databases 16

7、#儲存資料到disk的政策

(1)、#當有一條Keys資料被改變時,900秒重新整理到disk一次

save 900 1

(2)、#當有10條Keys資料被改變時,300秒重新整理到disk一次

save 300 10

(3)、#當有1w條keys資料被改變時,60秒重新整理到disk一次

save 60 10000

  8、#是否在每次更新操作後進行日志記錄,如果不開啟,可能會在斷電時導緻一段時間内的資料丢失。因為redis本身同步資料檔案是按上面save條件來同步的,是以有的資料會在一段時間内隻存在于記憶體中。預設值為no

appendonly no

9、#當dump .rdb資料庫的時候是否壓縮資料對象

rdbcompression yes

10、#本地資料庫檔案名,預設值為dump.rdb

dbfilename dump.rdb

11、#本地資料庫存放路徑,預設值為 ./

dir /var/lib/redis/

12、#連接配接密碼

# requirepass password

13、#最大用戶端連接配接數,預設不限制

# maxclients 128

14、#最大記憶體使用設定,達到最大記憶體設定後,Redis會先嘗試清除已到期或即将到期的Key,當此方法處理後,任到達最大記憶體設定,将無法再進行寫入操作。

# maxmemory 300mb

15、#Redis的複制配置

# slaveof <masterip> <masterport> 當本機為從服務時,設定主服務的IP及端口

# masterauth <master-password> 當本機為從服務時,設定主服務的連接配接密碼

二、儲存/備份:

資料備份可以通過定期備份該檔案實作。

因為redis是異步寫入磁盤的,如果要讓記憶體中的資料馬上寫入硬碟可以執行如下指令:

redis-cli save 或者 redis-cli -p 6380 save(指定端口)

注意,以上部署操作需要具備一定的權限,比如複制和設定核心參數等。

執行redis-benchmark指令時也會将記憶體資料寫入硬碟。 

三、 開啟端口号:

1、 打開/etc/sysconfig/iptables,

2、 在-【A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT】後面,加上 【-A INPUT -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT】  //這裡的6379是Redis預設端口号

3、儲存,重新開機防火牆:/etc/init.d/iptables restart

四、redis的常用操作指令:

1、判斷key是否存在:exists key。

2、删除key:del key1 key2 key3...

3、判斷key的類型:type key

4、使用通配符查找多個key:

如:keys a*查找以a開頭的key

5、重命名key:

rename oldkey newkey

6、傳回目前資料庫的key的數量:dbsize

7、設定key的過期時間:

expire key seconds

8、傳回key的剩餘過期秒數:

 ttl key

9、選擇資料庫:select db_index

redis預設16個資料庫,預設庫為第一個資料庫,即下标為0的資料庫。

如:select 1 選擇第二個資料庫。

10、将key從目前資料庫移動到指定資料庫:movemove key db_index 

11、flushdb 删除目前資料庫中的所有key。

12、flushall删除所有資料庫中的所有key。

本文轉自lzf0530377451CTO部落格,原文連結:http://blog.51cto.com/8757576/1898741 ,如需轉載請自行聯系原作者