linux下redis安装

来源:互联网 发布:魔法王座披风升阶数据 编辑:程序博客网 时间:2024/04/30 06:06

转载地址:http://2015.iteye.com/blog/1189527

1、下载安装

Linux代码  收藏代码
  1. wget http://redis.googlecode.com/files/redis-2.2.13.tar.gz  
  2. tar -xvzf redis-2.2.13.tar.gz  
  3. cd redis-2.2.13  
  4. make  
  5. sudo make install  

 

这时Redis的可执行文件被放到了/usr/local/bin

 

2、下载配置文件和init启动脚本

Linux代码  收藏代码
  1. wget https://github.com/ijonas/dotfiles/raw/master/etc/init.d/redis-server --no-check-certificate  
  2. wget https://github.com/ijonas/dotfiles/raw/master/etc/redis.conf --no-check-certificate  
  3. sudo mv redis-server /etc/init.d/redis-server  
  4. sudo chmod +x /etc/init.d/redis-server  
  5. sudo mv redis.conf /etc/redis.conf  

 

3、初始化用户和日志路径


第一次启动Redis前,建议为Redis单独建立一个用户,并新建data和日志文件夹。

 

Linux代码  收藏代码
  1. sudo useradd redis  
  2. sudo mkdir -p /var/lib/redis  
  3. sudo mkdir -p /var/log/redis  
  4. sudo chown redis.redis /var/lib/redis  
  5. sudo chown redis.redis /var/log/redis  

 

4、启动Redis

Linux代码  收藏代码
  1. sudo /etc/init.d/redis-server start  

 

5、启动client客户端连接

Linux代码  收藏代码
  1. redis-cli  

 

6、示例

Linux代码  收藏代码
  1. redis 127.0.0.1:6379> set user gaohf  
  2. OK  
  3. redis 127.0.0.1:6379> get user  
  4. "gaohf"  

 

如果在启动Redis时,报出类似下面的错误:

 

Starting redis-server: /etc/init.d/redis-server: line 32: start-stop-daemon: command not found
failed

 

那是因为在RedHat和CentOS上没有start-stop-daemon命令,这时,你可以将/etc/init.d/redis-server文件里的内容替换成以下内容:

 

Linux代码  收藏代码
  1. #!/bin/sh  
  2. #  
  3. # redis - this script starts and stops the redis-server daemon  
  4. #  
  5. # chkconfig:   - 85 15  
  6. # description:  Redis is a persistent key-value database  
  7. # processname: redis-server  
  8. # config:      /etc/redis.conf  
  9. # config:      /etc/sysconfig/redis  
  10. # pidfile:     /var/run/redis.pid  
  11.   
  12. # Source function library.  
  13. . /etc/rc.d/init.d/functions  
  14.   
  15. # Source networking configuration.  
  16. . /etc/sysconfig/network  
  17.   
  18. # Check that networking is up.  
  19. "$NETWORKING" = "no" ] && exit 0  
  20.   
  21. redis="/usr/local/bin/redis-server"  
  22. prog=$(basename $redis)  
  23.   
  24. REDIS_CONF_FILE="/etc/redis.conf"  
  25.   
  26. [ -f /etc/sysconfig/redis ] && . /etc/sysconfig/redis  
  27.   
  28. lockfile=/var/lock/subsys/redis  
  29.   
  30. start() {  
  31.     [ -x $redis ] || exit 5  
  32.     [ -f $REDIS_CONF_FILE ] || exit 6  
  33.     echo -n $"Starting $prog: "  
  34.     daemon $redis $REDIS_CONF_FILE  
  35.     retval=$?  
  36.     echo  
  37.     [ $retval -eq 0 ] && touch $lockfile  
  38.     return $retval  
  39. }  
  40.   
  41. stop() {  
  42.     echo -n $"Stopping $prog: "  
  43.     killproc $prog -QUIT  
  44.     retval=$?  
  45.     echo  
  46.     [ $retval -eq 0 ] && rm -f $lockfile  
  47.     return $retval  
  48. }  
  49.   
  50. restart() {  
  51.     stop  
  52.     start  
  53. }  
  54.   
  55. reload() {  
  56.     echo -n $"Reloading $prog: "  
  57.     killproc $redis -HUP  
  58.     RETVAL=$?  
  59.     echo  
  60. }  
  61.   
  62. force_reload() {  
  63.     restart  
  64. }  
  65.   
  66. rh_status() {  
  67.     status $prog  
  68. }  
  69.   
  70. rh_status_q() {  
  71.     rh_status >/dev/null 2>&1  
  72. }  
  73.   
  74. case "$1" in  
  75.     start)  
  76.         rh_status_q && exit 0  
  77.         $1  
  78.         ;;  
  79.     stop)  
  80.         rh_status_q || exit 0  
  81.         $1  
  82.         ;;  
  83.     restart|configtest)  
  84.         $1  
  85.         ;;  
  86.     reload)  
  87.         rh_status_q || exit 7  
  88.         $1  
  89.         ;;  
  90.     force-reload)  
  91.         force_reload  
  92.         ;;  
  93.     status)  
  94.         rh_status  
  95.         ;;  
  96.     condrestart|try-restart)  
  97.         rh_status_q || exit 0  
  98.         ;;  
  99.     *)  
  100.         echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"  
  101.         exit 2  
  102. esac  

 

如果启动时报出下面的错误:

 

启动 redis-server:
ARE YOU SURE YOU WANT TO USE VM?

Redis Virtual Memory is going to be deprecated soon,
we think you should NOT use it, but use Redis only if
your data is suitable for an in-memory database.
If you *really* want VM add this in the config file:

    really-use-vm yes

 

修改/etc/redis.conf文件,增加以下一句即可:

 

Linux代码  收藏代码
  1. really-use-vm yes  

 



原创粉丝点击