Linux下安裝Redis

来源:http://www.cnblogs.com/cicl/archive/2016/07/06/linuxredisanzhuang.html
-Advertisement-
Play Games

第一部分:安裝redis 現在我們將redis安裝到此目錄 /usr/local/redis 希望將安裝包下載到此目錄 /usr/local/src 那麼安裝過程指令如下: (註:redis官網地址:http://www.redis.io/ 最新版本:3.0.6) 註意上面的最後一行,我們通過PRE ...


第一部分:安裝redis 
現在我們將redis安裝到此目錄  /usr/local/redis

希望將安裝包下載到此目錄  /usr/local/src

那麼安裝過程指令如下:

$ mkdir /usr/local/redis  
$ cd /usr/local/src  
$ wget http://download.redis.io/releases/redis-3.0.6.tar.gz
$ tar xzf redis-3.0.6.tar.gz   
$ ln -s redis-3.0.6 redis #建立一個鏈接  
$ cd redis  
$ make PREFIX=/usr/local/redis install #安裝到指定目錄中

(註:redis官網地址:http://www.redis.io/ 最新版本:3.0.6)

註意上面的最後一行,我們通過PREFIX指定了安裝的目錄。如果make失敗,一般是你們系統中還未安裝gcc,那麼可以通過yum安裝: 

yum install gcc

 

安裝完成後,繼續執行make. 

在安裝redis成功後,你將可以在/usr/local/redis看到一個bin的目錄,裡面包括了以下文件: 

redis-benchmark  redis-check-aof  redis-check-dump  redis-cli  redis-server

 

第二部分:將redis做成一個服務 

1.複製腳本到/etc/rc.d/init.d目錄 
ps: /etc/rc.d/init.d/目錄下的腳本就類似與windows中的註冊表,在系統啟動的時候某些指定腳本將被執行 
按以上步驟安裝Redis時,其服務腳本位於:

/usr/local/src/redis/utils/redis_init_script 

必須將其複製到/etc/rc.d/init.d的目錄下: 

cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis

將redis_init_script複製到/etc/rc.d/init.d/,同時易名為redis。

如果這時添加註冊服務:

chkconfig --add redis

將報以下錯誤: redis服務不支持chkconfig

為此,我們需要更改redis腳本。 

2.更改redis腳本 
打開使用vi打開腳本,查看腳本信息: 

vim /etc/rc.d/init.d/redis

看到的內容如下(下內容是更改好的信息): 

#!/bin/sh 
#chkconfig: 2345 80 90 
# Simple Redis init.d script conceived to work on Linux systems 
# as it does use of the /proc filesystem. 
   
REDISPORT=6379 
EXEC=/usr/local/redis/bin/redis-server 
CLIEXEC=/usr/local/redis/bin/redis-cli 
   
PIDFILE=/var/run/redis_${REDISPORT}.pid 
CONF="/etc/redis/${REDISPORT}.conf" 
   
case "$1" in 
    start) 
        if [ -f $PIDFILE ] 
        then 
                echo "$PIDFILE exists, process is already running or crashed" 
        else 
                echo "Starting Redis server..." 
                $EXEC $CONF & 
        fi 
        ;; 
    stop) 
        if [ ! -f $PIDFILE ] 
        then 
                echo "$PIDFILE does not exist, process is not running" 
        else 
                PID=$(cat $PIDFILE) 
                echo "Stopping ..." 
                $CLIEXEC -p $REDISPORT shutdown 
                while [ -x /proc/${PID} ] 
                do 
                    echo "Waiting for Redis to shutdown ..." 
                    sleep 1 
                done 
                echo "Redis stopped" 
        fi 
        ;; 
    *) 
        echo "Please use start or stop as first argument" 
        ;; 
esac 

和原配置文件相比: 

1.原文件是沒有以下第2行的內容的,

#chkconfig: 2345 80 90 

2.原文件EXEC、CLIEXEC參數,也是有所更改。

EXEC=/usr/local/redis/bin/redis-server   
CLIEXEC=/usr/local/redis/bin/redis-cli 

3.redis開啟的命令,以後臺運行的方式執行。(跳過)

$EXEC $CONF & 

ps:註意後面的那個“&”,即是將服務轉到後面運行的意思,否則啟動服務時,Redis服務將 

占據在前臺,占用了主用戶界面,造成其它的命令執行不了。 
4.將redis配置文件拷貝到 /etc/redis/${REDISPORT}.conf 

mkdir /etc/redis    
cp /usr/local/src/redis/redis.conf /etc/redis/6379.conf

這樣,redis服務腳本指定的CONF就存在了。預設情況下,Redis未啟用認證,可以通過開啟6379.conf的requirepass 指定一個驗證密碼。 

以上操作完成後,即可註冊yedis服務:

chkconfig --add redis

3.啟動redis服務 

service redis start 

第三,將Redis的命令所在目錄添加到系統參數PATH中 

修改profile文件:

vi /etc/profile

在最後行追加: 

export PATH="$PATH:/usr/local/redis/bin"

然後馬上應用這個文件: 

. /etc/profile

這樣就可以直接調用redis-cli的命令了,如下所示: 

$ redis-cli   
redis 127.0.0.1:6379> auth cicl  
OK   
redis 127.0.0.1:6379> ping   
PONG   
redis 127.0.0.1:6379>
 (auth cicl 跳過)

至此,redis 就成功安裝了。 

總結下:在linux系統中安裝redis,或多或少都能碰到一些問題。在此次安裝中3個大部分, 
1.下載,安裝,這裡使用到wget命令,make命令,我不太懂make命令的使用,而且一直擔心make命令如何安裝到指定目錄下, 此次終於明白了。 
2.如何將一個程式添加到服務,當然也對/etc/rc.d/init.d這個文件有所瞭解。 
3.如何將一個程式的一些命令添加到系統參數中,直接輸入命令就能達到對某個程式的操作。 
其實就是指定好環境變數。 

>> windows下安裝Reids和php的redis擴展

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 我會用幾篇博客總結一下在Linux中進程之間通信的幾種方法,我會把這個開頭的摘要部分在這個系列的每篇博客中都打出來 進程之間通信的方式 管道 消息隊列 信號 信號量 共用存儲區 套接字(socket) 進程間通信(四)—共用存儲區傳送門:http://www.cnblogs.com/lenomire ...
  • 藉助於開源百度雲客戶端`bypy`實現將網站備份的數據上傳至網盤存儲。 ...
  • 添加網卡之後,網卡無法被正確的識別和使用排錯方法 查看/etc/udev/rules.d/70-persistent-net.rules的內容,該文件中可以查看到新添加的網卡的MAC地址 修改/etc/sysconfig/network-scripts/ifcfg-eth0的網卡的MAC地址為正確的 ...
  • 最近因為工作的需要看了看powershell相關的知識,個人總結了一點有關於powershell遠程連接需要做的步驟,希望對別人有所幫助。 使用powershell遠程連接,需要進行 設備的配置: 1. 開啟ps遠程管理:enable-psremoting -force (如果出現提示: 按 y 鍵 ...
  • Windows 7 與 Vmware Ubuntu 15.10_64 共用文件夾 ...
  • FreeBSD用戶手冊學習筆記 freeBSD安裝:http://my.oschina.net/lsgx/blog/540980 第一章 介紹 1.1 FreeBSD歷史和簡介 FreeBSD 自身的源代碼是完全公開的,所以可以對系統進行最大程度的定製。 FreeBSD 項目的目標是無附加條件地提供 ...
  • 安裝openssh-serversudo apt-get install openssh-server 查看server是否啟動: ps -ef |grep ssh 如果看到/usr/sbin/sshd -D,說明服務已經啟動,否則服務尚未啟動,那麼需要啟動server: /etc/init.d/s ...
  • ROP的全稱為Return-oriented programming(返回導向編程),這是一種高級的記憶體攻擊技術可以用來繞過現代操作系統的各種通用防禦(比如記憶體不可執行和代碼簽名等)。雖然現在大家都在用64位的操作系統,但是想要扎實的學好ROP還是得從基礎的x86系統開始,但看官請不要著急。 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...