centos中安裝配置redis和php-redis教程

來源:互聯網
上載者:User

centos安裝redis的shell指令碼
#!/bin/sh
#http://zggsdy.blog.163.com/blog/static/28782049201331825523781/
cd /web/soft/php
if [ -d "redis-2.8.13" ];then
rm -rf redis-2.8.13
fi
tar xzvf redis-2.8.13.tar.gz
cd redis-2.8.13
make
make install
sed -n '/daemonize no/p' redis.conf | sed -i 's/daemonize no/daemonize yes/g' redis.conf
if [ -f "/etc/redis.conf" ] ;then
rm -f /etc/redis.conf
fi
cp redis.conf /etc/
cd ../
rm -rf redis-2.8.13
#cp /web/conf/redis/redis.conf /etc/
#啟動
redis-server /etc/redis.conf
#查看進程有沒有成功啟動
ps -ef | grep redis
#測試輸入一個索引值
redis-cli set test "123456"
#擷取索引值
redis-cli get test
#關閉redis
#redis-cli shutdown //關閉所有
#redis-cli -p 6379 shutdown //關閉6397連接埠上的redis
#關閉以後緩衝的資料會自動dump到硬碟上
redis設定檔中文說明,這個配置是針對2.4的,我現在伺服器上安裝的是2.8,不能照搬配置
############################## 中文說明: ################################
#1,是否以後台進程運行,預設為no
#daemonize no
#2,如以後台進程運行,則需指定一個pid,預設為/var/run/redis.pid
#pidfile /var/run/redis.pid
#3,監聽連接埠,預設為6379
#port 6379
#4,綁定主機IP,預設值為127.0.0.1(注釋)
#bind 127.0.0.1
#5,逾時時間,預設為300(秒)
#timeout 300
#6,日誌記錄等級,有4個可選值,debug,verbose(預設值),notice,warning
#loglevel verbose
#7,日誌記錄方式,預設值為stdout
#logfile stdout
#8,可用資料庫數,預設值為16,預設資料庫為0
#databases 16
#9,指出在多長時間內,有多少次更新操作,就將資料同步到資料檔案。這個可以多個條件配合,比如預設設定檔中的設定,就設定了三個條件。
#900秒(15分鐘)內至少有1個key被改變
#save 900 1
#300秒(5分鐘)內至少有10個key被改變
#save 300 10
#10,儲存至本機資料庫時是否壓縮資料,預設為yes
#rdbcompression yes
#11,本機資料庫檔案名稱,預設值為dump.rdb
#dbfilename /root/redis_db/dump.rdb
#12,本機資料庫存放路徑,預設值為 ./
#dir /root/redis_db/
#13,當本機為從服務時,設定主服務的IP及連接埠(注釋)
#slaveof
#14,當本機為從服務時,設定主服務的串連密碼(注釋)
#masterauth
#15,串連密碼(注釋)
#requirepass foobared
#16,最大用戶端串連數,預設不限制(注釋)
#maxclients 128
#17,設定最大記憶體,達到最大記憶體設定後,Redis會先嘗試清除已到期或即將到期的Key,當此方法處理後,任到達最大記憶體設定,將無法再進行寫入操作。(注釋)
#maxmemory
#18,是否在每次更新操作後進行日誌記錄,如果不開啟,可能會在斷電時導致一段時間內的資料丟失。因為redis本身同步資料檔案是按上面save條件來同步的,所以有的資料會在一段時間內只存在於記憶體中。預設值為no
#appendonly yes
#19,更新記錄檔名,預設值為appendonly.aof(注釋)
#appendfilename /root/redis_db/appendonly.aof
#20,更新日誌條件,共有3個可選值。no表示等作業系統進行資料緩衝同步到磁碟,always表示每次更新操作後手動調用fsync()將資料寫到磁碟,everysec表示每秒同步一次(預設值)。
#appendfsync everysec
#21,是否使用虛擬記憶體,預設值為no
#vm-enabled yes
#22,虛擬記憶體檔案路徑,預設值為/tmp/redis.swap,不可多個Redis執行個體共用
#vm-swap-file /tmp/redis.swap
#23,將所有大於vm-max-memory的資料存入虛擬記憶體,無論vm-max-memory設定多小,所有索引資料都是記憶體儲存的 (Redis的索引資料就是keys),也就是說,當vm-max-memory設定為0的時候,其實是所有value都存在於磁碟。預設值為0。
#vm-max-memory 0
#24,虛擬記憶體檔案以Block Storage,每塊32bytes
#vm-page-size 32
#25,虛擬內在檔案的最大數
#vm-pages 134217728
#26,可以設定訪問swap檔案的線程數,設定最好不要超過機器的核心數,如果設定為0,那麼所有對swap檔案的操作都是串列的.可能會造成比較長時間的延遲,但是對資料完整性有很好的保證.
#vm-max-threads 4
#27,把小的輸出緩衝放在一起,以便能夠在一個TCP packet中為用戶端發送多個響應,具體原理和真實效果我不是很清楚。所以根據注釋,你不是很確定的時候就設定成yes
#glueoutputbuf yes
#28,在redis 2.0中引入了hash資料結構。當hash中包含超過指定元素個數並且最大的元素沒有超過臨界時,hash將以一種特殊的編碼方式(大大減少記憶體使用量)來儲存,這裡可以設定這兩個臨界值
#hash-max-zipmap-entries 64
#29,hash中一個元素的最大值
#hash-max-zipmap-value 512
#30,開啟之後,redis將在每100毫秒時使用1毫秒的CPU時間來對redis的hash表進行重新hash,可以降低記憶體的使用。當你的使 用情境中,有非常嚴格的即時性需要,不能夠接受Redis時不時的對請求有2毫秒的延遲的話,把這項配置為no。如果沒有這麼嚴格的即時性要求,可以設定 為yes,以便能夠儘可能快的釋放記憶體
#activerehashing yes
安裝php擴充redis
#!/bin/sh
#https://github.com/nicolasff/phpredis/zipball/master
cd /web/soft/php
if [ -d "nicolasff-phpredis-94e0649" ];then
rm -rf nicolasff-phpredis-94e0649
fi
unzip phpredis-2.2.5.zip
cd nicolasff-phpredis-94e0649
/web/server/php/bin/phpize
./configure --with-php-config=/web/server/php/bin/php-config
make && make install
PHPINI="/web/server/php/etc/php.ini"
sed -i '908a extension = "redis.so"' $PHPINI
cd ../
rm -rf nicolasff-phpredis-94e0649
echo '
$redis = new Redis();
$redis->connect("127.0.0.1",6379);
$redis->set("test","hello world!");
echo $redis->get("test");
?> ' > /root/redis.php
/web/server/php/bin/php /root/redis.php

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.