簡單來說 redis 就是一個資料庫,不過與傳統資料庫不同的是 redis 的資料是存在記憶體中的,所以讀寫速度非常快,因此 redis 被廣泛應用於快取方向。
下載,解壓縮,編譯:
$ wget http://download.redis.io/releases/redis-4.0.10.tar.gz $ tar xzf redis-4.0.10.tar.gz $ mv redis-4.0.10 /usr/local/redis $ cd /usr/local/redis $ make
二進位檔案是編譯完成後在src目錄下
$ ll -a src | grep redis -rw-rw-r-- 1 root root 2.4K Jun 13 19:02 redisassert.h -rwxr-xr-x 1 root root 2.6M Sep 14 12:05 redis-benchmark -rw-rw-r-- 1 root root 29K Jun 13 19:02 redis-benchmark.c -rw-r--r-- 1 root root 129K Sep 14 12:05 redis-benchmark.o -rwxr-xr-x 1 root root 6.0M Sep 14 12:05 redis-check-aof -rw-rw-r-- 1 root root 7.0K Jun 13 19:02 redis-check-aof.c -rw-r--r-- 1 root root 38K Sep 14 12:05 redis-check-aof.o -rwxr-xr-x 1 root root 6.0M Sep 14 12:05 redis-check-rdb -rw-rw-r-- 1 root root 14K Jun 13 19:02 redis-check-rdb.c -rw-r--r-- 1 root root 68K Sep 14 12:04 redis-check-rdb.o -rwxr-xr-x 1 root root 2.8M Sep 14 12:05 redis-cli -rw-rw-r-- 1 root root 99K Jun 13 19:02 redis-cli.c -rw-r--r-- 1 root root 450K Sep 14 12:05 redis-cli.o -rw-rw-r-- 1 root root 22K Jun 13 19:02 redismodule.h -rwxr-xr-x 1 root root 6.0M Sep 14 12:05 redis-sentinel -rwxr-xr-x 1 root root 6.0M Sep 14 12:05 redis-server -rwxrwxr-x 1 root root 65K Jun 13 19:02 redis-trib
其中redis-server為服務端程序,redis-cli為客戶端程式。
二進位檔案是編譯完成後在src目錄下,透過下面的指令啟動Redis服務:
$ ln -s /usr/local/redis/src/redis-cli /usr/bin/redis $ ln -s /usr/local/redis/src/redis-server /usr/bin/redisd
$ redis --version redis-cli 4.0.10 $ redisd --version Redis server v=4.0.10 sha=00000000:0 malloc=jemalloc-4.0.3 bits=64 build=e53a76b77e60d5b0
至此,表示你的redis已經安裝完畢。
為什麼配置要單獨列出來一個標題呢?
這是因為Redis並沒有最大地去優化安全方面,而是盡可能去優化高效能和易用性。
在未啟用身份驗證的情況下,預設情況下Redis會打開6379端口,這可能會導致未經授權的存取操作。所以我們這裡需要做一些安全性設定
千萬不要用一個有較高權限的使用者來啟動Redis。如果Redis不安全,你的高權限使用者就可能成為攻擊入口,導致伺服器被攻擊。
所以我們需要建立redis帳戶,並透過該帳戶啟動redis服務,並且配置該帳戶禁止登陸。
$ adduser redis $ vim /etc/passwd redis:x:1001:1001:,,,:/home/redis:/usr/sbin/nologin $ chown -R redis:redis /usr/local/redis
這裡需要你對vim有基本的動作
$ vim redis.conf# 第92行左右 修改端口port 7379# 第171行左右 日志文件logfile /var/log/redis/redis.log# 第263行左右 设置快照文件目录,切勿设置成一个redis用户没有权限的目录dir /usr/local/redis/# 第500行左右 设置密码requirepass YOUR_PASSWORD $ mkdir /var/log/redis $ chown -R redis:redis /var/log/redis/
redis-server預設不是後台程式啟動,所以我們需要為它設定一個啟動程式.
$ vim /usr/bin/goredisd nohup /usr/bin/redisd /usr/local/redis/redis.conf >> /var/log/redis/goredisd.log 2>&1 & $ goredisd $ ps -axu | grep redis redis 19498 0.0 0.1 145304 2580 pts/0 Sl 10:49 0:09 /usr/bin/redisd *:7379
以上是如何安裝與設定redis的詳細內容。更多資訊請關注PHP中文網其他相關文章!