Redis怎麼安裝部署?

來源:互聯網
上載者:User

   Redis是一個key-value儲存系統。和Memcached類似,但是解決了斷電後資料完全丟失的情況,而且她支援更多無化的value類型,除了和string外,還支援lists(鏈表)、sets(集合)和zsets(有序集合)幾種資料類型。這些資料類型都支援push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。

  1、先到Redis官網(redis.io)下載redis安裝包

  2、將其下載到我的/lamp目錄下

  3、解壓並進入其目錄

  4、編譯來源程式

  make

  cd src

  make install PREFIX=/usr/local/redis

  5、將設定檔移動到redis目錄

  6、啟動redis服務

  7、預設情況,Redis不是在後台運行,我們需要把redis放在後台運行

  vim /usr/local/redis/etc/redis.conf

  將daemonize的值改為yes

  8、用戶端串連

  /usr/local/redis/bin/redis-cli

  9、停止redis執行個體

  /usr/local/redis/bin/redis-cli shutdown

  或者

  pkill redis-server

  10、讓redis開機自啟

  vim /etc/rc.local

  加入

  /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis-conf

  11、接下來我們看看/usr/local/redis/bin目錄下的幾個檔案時什麼

  redis-benchmark:redis效能測試工具

  redis-check-aof:檢查aof日誌的工具

  redis-check-dump:檢查rdb日誌的工具

  redis-cli:串連用的用戶端

  redis-server:redis服務進程

  Redis的配置

  daemonize:如需要在後台運行,把該項的值改為yes

  pdifile:把pid檔案放在/var/run/redis.pid,可以配置到其他地址

  bind:指定redis只接收來自該IP的請求,如果不設定,那麼將處理所有請求,在生產環節中最好設定該項

  port:監聽連接埠,預設為6379

  timeout:設定用戶端串連時的逾時時間,單位為秒

  loglevel:等級分為4級,debug,revbose,notice和warning。生產環境下一般開啟notice

  logfile:配置log檔案地址,預設使用標準輸出,即列印在命令列終端的連接埠上

  database:設定資料庫的個數,預設使用的資料庫是0

  save:設定redis進行資料庫鏡像的頻率

  rdbcompression:在進行鏡像備份時,是否進行壓縮

  dbfilename:鏡像備份檔案的檔案名稱

  dir:資料庫鏡像備份的檔案放置的路徑

  slaveof:設定該資料庫為其他資料庫的從資料庫

  masterauth:當主要資料庫串連要求輸入密碼驗證時,在這裡設定

  requirepass:設定用戶端串連後進行任何其他指定前需要使用的密碼

  maxclients:限制同時串連的用戶端數量

  maxmemory:設定redis能夠使用的最大記憶體

  appendonly:開啟appendonly模式後,redis會把每一次所接收到的寫操作都追加到appendonly.aof檔案中,當redis重新啟動時,會從該檔案恢複出之前的狀態

  appendfsync:設定appendonly.aof檔案進行同步的頻率

  vm_enabled:是否開啟虛擬記憶體支援

  vm_swap_file:設定虛擬記憶體的分頁檔的路徑

  vm_max_momery:設定開啟虛擬記憶體後,redis將使用的最大實體記憶體的大小,預設為0

  vm_page_size:設定虛擬記憶體頁的大小

  vm_pages:設定分頁檔的總的page數量

  vm_max_thrrads:設定vm IO同時使用的線程數量

  4.redis資料結構

  redis 的作者antirez曾稱其為一個資料結構伺服器(data structures server ),這是一個非常準確的表述,redis的所有功能就是將資料以其固有的幾種結構儲存,並提供給使用者操作這幾種結構的介面。我們可以想象我們在各種語言中的那些固有資料類型及其操作。

  redis目前提供四種資料類型:string ,list ,setzset (sorted set)和Hash

  string 是最簡單的類型,你可以理解成與Memcached一模一個的類型,一個key對應一個value,其上支援的操作與Memcached的操作類似。但它的功能更豐富。

  list 是一個鏈表結構,主要功能是push、pop、擷取一個範圍的所有值等等。操作中key理解為鏈表的名字。

  set 是集合,和我們數學中的集合概念相似,對集合的操作有添加刪除元素,有對多個集合求交並差等操作。操作中key理解為集合的名字。

  zset 是set的一個升級版本,他在set的基礎上增加了一個順序屬性,這一屬性在添加修改元素的時候可以指定,每次指定後,zset會自動重新按新的值調整順序。可以理解了有兩列的mysql表,一列存value,一列存順序。操作中key理解為zset的名字。

  Hash 資料類型允許使用者用Redis儲存物件類型,Hash資料類型的一個重要優點是,當你儲存的資料對象只有很少幾個key值時,資料存放區的記憶體消耗會很小.更多關於Hash資料類型的說明請見: http://code.google.com/p/redis/wiki/Hashes

  在官網上給出了所有支援的介面列表,並副副附有詳細的介紹,地址:

  http://code.google.com/p/redis/wiki/CommandReference

  另外,作者還提供了一個非常貼心的web命令列類比頁面,供初學者試用redis,地址:

  http://try.redis-db.com/

  5.redis資料存放區

  redis的儲存分為記憶體儲存、磁碟儲存和log檔案三部分,設定檔中有三個參數對其進行配置。

  save seconds updatessave 配置,指出在多長時間內,有多少次更新操作,就將資料同步到資料檔案。這個可以多個條件配合,比如預設設定檔中的設定,就設定了三個條件。

  appendonly yes /no appendonly 配置,指出是否在每次更新操作後進行日誌記錄,如果不開啟,可能會在斷電時導致一段時間內的資料丟失。因為redis本身同步資料檔案是按上面的save條件來同步的,所以有的資料會在一段時間內只存在於記憶體中。

  appendfsync no /always /everysec appendfsync 配置,no 表示等作業系統進行資料緩衝同步到磁碟,always 表示每次更新操作後手動調用fsync ()將資料寫到磁碟,everysec 表示每秒同步一次。

  6.redis主從配置

  redis支援master-slave 的主從配置,配置方法是在從機的設定檔中指定slaveof 參數為主機的ip和port即可

  7.redis起步(連結整理)

  項目首頁,下方是各種語言支援列表:

  http://code.google.com/p/redis/

  作者在wiki中給出了一個非常好的例子,以使我們可以快速上手,地址:

  http://code.google.com/p/redis/wiki/TwitterAlikeExample

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.