mac下redis安裝、設置、啟動停止

  • 2019 年 10 月 4 日
  • 筆記

常用命令說明

redis服務器:redis-server redis客戶端:redis-cli redis性能測試工具:redis-benchmark AOF文件修復工具:redis-check-aof RDB文件修復工具:redis-check-rd redis設置臨時密碼:config set requirepass 密碼 redis獲取臨時密碼:config get requirepass

啟動和停止

服務端啟動

  • 默認啟動 如上,在命令redis-server即啟動redis服務端。且接受客戶端連接
  • 根據設置啟動
  • 在 /usr/local/redis目錄下建立bin,etc,db三個目錄
  • 把/usr/local/redis/src目錄下的mkreleasehdr.sh,redis-benchmark, redis-check-rdb, redis-cli, redis-server拷貝到bin目錄
  • 在etc下,新建配置redis.conf,內容如下。
  • /usr/local/redis下新建日誌文件log-redis.log,並修改當前用戶使用權限。sudo chown -R shoren /usr/local/redis/
  • 啟動服務端:redis-server /usr/local/redis/etc/redis.conf
#修改為守護模式  daemonize yes    #設置進程鎖文件  pidfile /usr/local/redis/redis.pid    #端口  port 6379    #客戶端超時時間  timeout 300    #日誌級別  loglevel debug    #日誌文件位置  logfile /usr/local/redis/log-redis.log    #設置數據庫的數量,默認數據庫為16,可以使用SELECT 命令在連接上指定數據庫id  databases 16    ##指定在多長時間內,有多少次更新操作,就將數據同步到數據文件,可以多個條件配合  #save    #Redis默認配置文件中提供了三個條件:  save 900 1  save 300 10  save 60 10000    #指定存儲至本地數據庫時是否壓縮數據,默認為yes,Redis採用LZF壓縮,如果為了節省CPU時間,  #可以關閉該#選項,但會導致數據庫文件變的巨大  rdbcompression yes    #指定本地數據庫文件名  dbfilename dump.rdb    #指定本地數據庫路徑  dir /usr/local/redis/db/    #指定是否在每次更新操作後進行日誌記錄,Redis在默認情況下是異步的把數據寫入磁盤,如果不開啟,可能  #會在斷電時導致一段時間內的數據丟失。因為 redis本身同步數據文件是按上面save條件來同步的,所以有  #的數據會在一段時間內只存在於內存中  appendonly no    #指定更新日誌條件,共有3個可選值:  #no:表示等操作系統進行數據緩存同步到磁盤(快)  #always:表示每次更新操作後手動調用fsync()將數據寫到磁盤(慢,安全)  #everysec:表示每秒同步一次(折衷,默認值)  appendfsync everysec

接着,可以查看日誌,如下,表示啟動成功:

                _._             _.-``__ ''-._        _.-``    `.  `_.  ''-._           Redis 3.2.5 (00000000/0) 64 bit    .-`` .-```.  ```/    _.,_ ''-._   (    '      ,       .-`  | `,    )     Running in standalone mode   |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379   |    `-._   `._    /     _.-'    |     PID: 14447    `-._    `-._  `-./  _.-'    _.-'   |`-._`-._    `-.__.-'    _.-'_.-'|   |    `-._`-._        _.-'_.-'    |           http://redis.io    `-._    `-._`-.__.-'_.-'    _.-'   |`-._`-._    `-.__.-'    _.-'_.-'|   |    `-._`-._        _.-'_.-'    |    `-._    `-._`-.__.-'_.-'    _.-'        `-._    `-.__.-'    _.-'            `-._        _.-'                `-.__.-'    14447:M 24 Apr 17:57:33.215 # Server started, Redis version 3.2.5  14447:M 24 Apr 17:57:33.215 * The server is now ready to accept connections on port 6379  14447:M 24 Apr 17:57:33.215 - 0 clients connected (0 slaves), 956832 bytes in use  14447:M 24 Apr 17:57:38.257 - 0 clients connected (0 slaves), 956832 bytes in use

關閉服務端

  • 強行關閉 強行終止redis進程可能會導致數據丟失,因為redis可能正在將內存數據同步到硬盤中。
 ps axu|grep redis  ## 查找redis-server的PID   kill -9 PID
  • 命令關閉 向redis發送SHUTDOWN命令,即 redis-cli SHUTDOWN 。Redis收到命令後,服務端會斷開所有客戶端的連接,然後根據配置執行持久化,最後退出。
## 啟動redis-server,後台線程  AT8775:redis shoren$ redis-server /usr/local/redis/etc/redis.conf  ## 啟動成功  AT8775:redis shoren$ ps axu|grep redis  shoren           14948   0.0  0.0  2434840    760 s000  S+   10:18上午   0:00.00 grep redis  shoren           14946   0.0  0.0  2452968   1492   ??  Ss   10:18上午   0:00.01 redis-server *:6379  ## 關閉服務器  AT8775:redis shoren$ redis-cli shutdown  ##關閉成功  AT8775:redis shoren$ ps axu|grep redis  shoren           14952   0.0  0.0  2435864    772 s000  S+   10:19上午   0:00.01 grep redis

啟動客戶端

  • 默認啟動 使用命令redis-cli啟動客戶端,按照默認配置連接Redis(127.0.0.1:6379)。
  • 指定地址和端口號 使用命令 redis-cli -h 127.0.0.1 -p 6379

關閉客戶端

交互模式使用quit

AT8775:redis shoren$ redis-cli -h 127.0.0.1 -p 6379  ## 簡單使用set、get命令  127.0.0.1:6379> set key value12  OK  127.0.0.1:6379> get key  "value12"  ## 退出  127.0.0.1:6379> quit  AT8775:redis shoren$