lihu129c 发表于 2015-7-23 08:43:43

redis 安装并且设置开机后台自动启动(转)

  1,安装redis





1 wget http://download.redis.io/releases/redis-2.8.8.tar.gz
2 tar xzf redis-2.8.8.tar.gz
3 cd redis-2.8.8
4 make
  2,建立Redis目录(非必须)


这个过程不是必须的,只是为了将Redis相关的资源统一管理而进行的操作。

执行以下命令建立相关目录并拷贝相关文件至目录中:


1 cd redis-2.8.8
2 mkdir -p /usr/local/redis/bin
3 mkdir -p /usr/local/redis/etc
4 mkdir -p /usr/local/redis/var
5
6 cp redis.conf /usr/local/redis/etc/
7
8 cd src
9 cp redis-server redis-cli redis-benchmark/usr/local/redis/bin/
  
  3,修改redis.conf
  参考http://www.iyunv.com/yinliang/p/3677827.html
  vi /usr/local/redis/etc/redis.conf
  
  4,开启redis远程端口
  开启redis端口,修改防火墙配置文件
      vi /etc/sysconfig/iptables   
加入端口配置
      -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT   
  5,设置内存分配策略
  /proc/sys/vm/overcommit_memory
可选值:0、1、2。
0, 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。
1, 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。
2, 表示内核允许分配超过所有物理内存和交换空间总和的内存
      vi /etc/sysctl.conf
  添加参数



vm.overcommit_memory = 1
  后重启系统
  6,配置init脚本
  其实github上很多老外写好的启动脚本,不过大部分都是ubuntu的,对于Centos,也有一份
  https://gist.github.com/1335694
经过我的修改,如下:







1 # chkconfig:   2345 90 10
2
3   # description:Redis is a persistent key-value database
4
5 PATH=/usr/local/bin:/sbin:/usr/bin:/bin
6
7 REDISPORT=6379
8 EXEC=/usr/local/redis/bin/redis-server
9 REDIS_CLI=/usr/local/redis/bin/redis-cli
10
11 PIDFILE=/usr/local/redis/var/redis.pid
12 CONF="/usr/local/redis/etc/redis.conf"
13
14 case "$1" in
15   start)
16         if [ -f $PIDFILE ]
17         then
18               echo "$PIDFILE exists, process is already running or crashed"
19         else
20               echo "Starting Redis server..."
21               $EXEC $CONF
22         fi
23         if [ "$?"="0" ]
24         then
25               echo "Redis is running..."
26         fi
27         ;;
28   stop)
29         if [ ! -f $PIDFILE ]
30         then
31               echo "$PIDFILE does not exist, process is not running"
32         else
33               PID=$(cat $PIDFILE)
34               echo "Stopping ..."
35               $REDIS_CLI -p $REDISPORT SHUTDOWN
36               while [ -x ${PIDFILE} ]
37                do
38                     echo "Waiting for Redis to shutdown ..."
39                     sleep 1
40               done
41               echo "Redis stopped"
42         fi
43         ;;
44    restart|force-reload)
45         ${0} stop
  把上述代码存为redis,放到/etc/init.d/下面




chmod +x /etc/init.d/redis
  其实做成服务启动,也是调用redis-server,如果想让它在后台作为daemon运行,那么
  需要修改redis.conf,将 daemonize no 改为 daemonize yes
  7,设定开机启动服务
  sudo chkconfig redis on
  8,启动,停止redis
启动:
  service redis start #或者 /etc/init.d/redis start
  停止:
   service redis stop #或者 /etc/init.d/redis stop
  
  9,查看redis启动日志
  tail -f /usr/local/redis/var/redis.log
  
10,测试redis



1 redis-cli
2 redis 127.0.0.1:6379> set foo 123
3 OK
4 redis 127.0.0.1:6379> get foo
5 "123"
6 redis 127.0.0.1:6379> exit
  
页: [1]
查看完整版本: redis 安装并且设置开机后台自动启动(转)