1. 下載
2. 安裝
[root@lbd ~]# cp redis-2.8.13.tar.gz /usr/local/ [root@lbd ~]# cd /usr/local/ [root@lbd local]# tar zxvf redis-2.8.13.tar.gz [root@lbd local]# mv redis-2.8.13 redis2813 [root@lbd local]# cd redis2813/ [root@lbd redis2813]# make [root@lbd redis2813]# make install |
3. 修改系統參數
[root@lbd bin]# vim /etc/sysctl.conf 添加: vm.overcommit_memory=1
[root@lbd bin]# sysctl -p // 刷新配置 [root@lbd bin]# cat /proc/sys/vm/overcommit_memory // 輸出: 1 |
4. 修改配置文件
// 是否以後臺daemon方式運行 daemonize yes // pid文件位置 pidfile /usr/local/redis2813/redis.pid // 端口 port 10123 // 請求超時時間 timeout 300 // 是否保活 tcp-keepalive 0 // 日誌級別 loglevel debug // 日誌文件 logfile /usr/local/redis2813/var/redis.log // 開啓數據庫的數量 databases 16 // 保存快照的頻率,第一個*表示多長時間,第三個*表示執行多少次寫操作。在一定時間內執行一定數量的寫操作時,自動保存快照。可設置多個條件。 save 900 1 save 300 10 save 60 10000 // 是否使用 壓縮 rdbcompression yes // 數據庫快照文件名(只是文件名,不包括目錄) dbfilename dump.rdb // 數據庫快照目錄 dir /usr/local/redis2813/db // 是否開啓appendonlylog,開啓的話每次寫操作會記一條log,這會提高數據抗風險能力,但影響效率。 appendonly no // appendonlylog如何同步到磁盤(三個選項,分別是每次寫都強制調用fsync、每秒啓用一次fsync、不調用fsync等待系統自己同步) appendfsync always |
5. 啓動服務
[root@lbd ~]# cd /usr/local/redis2813/ |
6. 測試
telnet 192.168.89.30 10123
7. 停止服務
[root@lbd redis2813]# ./bin/redis-cli -p 10123 shutdown |
執行安裝redis報錯undefined reference to `__sync_add_and_fetch_4'
執行make命令時報錯: zmalloc.o: In function `zmalloc_used_memory': /var/lib/tcommsvr/redis-2.8.0-rc4/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4' collect2: ld returned 1 exit status make[1]: *** [redis-server] Error 1 make[1]: Leaving directory `/var/lib/tcommsvr/redis-2.8.0-rc4/src' make: *** [all] Error 2
產生原因: linux爲32位版本。 查看方式:getconf LONG_BIT
解決辦法: 執行make命令時加參數:make CFLAGS="-march=i686" |