在VMware的Linux系統上安裝Redis
具體過程以下:
在執行make的時候報錯,具體報錯信息以下:
- zmalloc.o: In function `zmalloc_used_memory':
- /usr/local/redis-2.6.14/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 `/usr/local/redis-2.6.14/src'
- make: *** [all] Error 2
網上查了下資料,主要是由於個人linux是32位的,因此會報這個錯,解決方案以下:
在make操做的時候加一個執行參數:
make CFLAGS="-march=i686"
而後就不報錯了。
附:啓動並運行Redis
編譯的可執行文件在src目錄中,使用如下命令運行Redis:
- [root@localhost redis-2.6.14]# src/redis-server
啓動成功後控制檯打印以下信息:
- [2918] 03 Jul 09:05:01.011 # Warning: no config file specified, using the default config. In order to specify a config file use src/redis-server /path/to/redis.conf
- [2918] 03 Jul 09:05:01.017 * Max number of open files set to 10032
- [2918] 03 Jul 09:05:01.024 # Warning: 32 bit instance detected but no memory limit set. Setting 3 GB maxmemory limit with 'noeviction' policy now.
- _._
- _.-``__ ''-._
- _.-`` `. `_. ''-._ Redis 2.6.14 (00000000/0) 32 bit
- .-`` .-```. ```\/ _.,_ ''-._
- ( ' , .-` | `, ) Running in stand alone mode
- |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
- | `-._ `._ / _.-' | PID: 2918
- `-._ `-._ `-./ _.-' _.-'
- |`-._`-._ `-.__.-' _.-'_.-'|
- | `-._`-._ _.-'_.-' | http://redis.io
- `-._ `-._`-.__.-'_.-' _.-'
- |`-._`-._ `-.__.-' _.-'_.-'|
- | `-._`-._ _.-'_.-' |
- `-._ `-._`-.__.-'_.-' _.-'
- `-._ `-.__.-' _.-'
- `-._ _.-'
- `-.__.-'
-
- [2918] 03 Jul 09:05:01.029 # Server started, Redis version 2.6.14
- [2918] 03 Jul 09:05:01.030 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
- [2918] 03 Jul 09:05:01.030 * The server is now ready to accept connections on port 6379
咱們可使用內置的客戶端來鏈接Redis
- [root@localhost redis-2.6.14]# src/redis-cli
- redis 127.0.0.1:6379> set name chenzhou
- OK
- redis 127.0.0.1:6379> get name
- "chenzhou"
- redis 127.0.0.1:6379>
附2:把Redis做爲Linux服務開機啓動
這裏只提供一種最簡單的方式,最好的是經過編寫開機啓動腳原本作。
若是要開機啓動redis,咱們須要把redis設置爲daemon後臺啓動(若是不設置 爲後臺啓動,則linux啓動後圖形界面會卡在一個空白的頁面),而redis只有1個啓動參數,就是redis的配置文件路徑。redis的默認配置文 件redis.conf位於redis的安裝目錄下。咱們能夠把該文件copy到/etc目錄下
修改完daemonize參數以後,redis就可以經過daemon方式啓動了,那麼下一步就是把redis加入到linux開機啓動服務配置中了,具體步驟以下:
使用VI編輯器打開Linux開機啓動服務配置文件/etc/rc.local,並在其中加入下面的一行代碼:
/usr/local/redis-2.6.14/src/redis-server /etc/redis.conf
編輯完後保存,而後重啓系統就OK了。
中止Redis服務: