最近在做作业的时候需要用到Redis缓存,由于每次重启服务器都需要重新启动Redis,也是忒烦人,于是就有了这一篇博客,好,废话不多说。

只有两个步骤:

  1. 设置redis.conf中daemonize为yes,确保守护进程开启。

  2. 编写开机自启动脚本

    基本原理为: 
    系统开机启动时会去加载/etc/init.d/下面的脚本,通常而言每个脚本文件会自定义实现程序的启动;若想将新的程序开机自启动,只需在该目录下添加一个自定义启动程序的脚本,然后设置相应规则即可。 
    如在这里我们在/etc/init.d/下新建一个 redis 的脚本,开机启动时会去加载执行该脚本。

vim /etc/init.d/redis

在该脚本中添加一下内容:

# chkconfig: 2345 10 90
#redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
# description: Start and Stop redis PATH=/usr/local/bin:/sbin:/usr/bin:/bin
export PATH
REDISPORT=6379 #端口号,这是默认的,如果你安装的时候不是默认端口号,则需要修改
EXEC=/usr/local/redis/bin/redis-server #redis-server启动脚本的位置,你如果忘了可以用find或whereis找到
REDIS_CLI=/usr/redisbin/redis-cli #redis-cli客户端启动脚本的位置,你如果忘了可以用find或whereis找到 PIDFILE=/var/run/redis.pid #这个也可以用find或whereis找到
CONF="/usr/local/redis/etc/redis.conf" #redis.conf配置文件的位置,你如果忘了可以用find或whereis找到
AUTH="1234" 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
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE exists, process is not running."
else
PID=$(cat $PIDFILE)
echo "Stopping..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
sleep 2
while [ -x $PIDFILE ]
do
echo "Waiting for Redis to shutdown..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac

写完后保存退出

设置可执行权限:

chmod 755  /etc/init.d/redis
redis

启动测试:

/etc/init.d/redis start

启动成功会提示如下信息:

Starting Redis server...
Redis is running...

使用redis-cli测试:

[root@localhost ~]# /usr/local/redis/bin/redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"
127.0.0.1:6379> exit

设置开机自启动:

chkconfig redis on

关机重启测试:

reboot

开机完之后可以用 redis-cli 测试,或者用 ps -ef | grep redis 看看redis 是否在运行中

本篇博客大部分参考自Linux下Redis开机自启(Centos),感谢原作者的贡献

最新文章

  1. Java 6 JVM参数选项大全(中文版)
  2. MySQL索引之前缀索引和索引选择性
  3. [转]Dll注入经典方法完整版
  4. FLASH CC 2015 CANVAS 实际应用过程中遇到的【粉色】问题(不定期更新)
  5. [转载] ORMs under the hood
  6. 传说中的WCF(4):发送和接收SOAP头
  7. mybatis系列-08-动态sql
  8. java 加减乘除错误
  9. python requests 官方文档
  10. MySQL长短密码
  11. 谷歌Chrome浏览器之No Sandbox
  12. netty和protobuf的使用
  13. linux内存源码分析 - 内存回收(匿名页反向映射)
  14. UI开发总结
  15. 排序算法练习--JAVA(:内部排序:插入、选择、冒泡、快速排序)
  16. LeetCode 509 Fibonacci Number 解题报告
  17. virgo-tomcat-server的生产环境线上配置与管理
  18. stm32内部温度计算方法
  19. make -j [N] --jobs [=N] 增加效率
  20. Struts2知识点小结(一)

热门文章

  1. 自定义子tabBar
  2. java 使用 集合 制作学生管理系统
  3. yield 用法分析
  4. 用PHP调用Oracle存储过程方法
  5. PHP命令行脚本接收传入参数的三种方式
  6. Oracle学习笔记(1)----忘记用户名的密码该如何找回
  7. ubuntu vim8.0源码安装
  8. 零配置简单搭建SpringMVC 项目
  9. jdk 设计模式
  10. Swift_2基础