脚本专栏 
首页 > 脚本专栏 > 浏览文章

Linux下Redis数据库的安装方法与自动启动脚本分享

(编辑:jimmy 日期: 2024/11/28 浏览:3 次 )

安装Redis

 (1) 下载Redis

wget http://redis.googlecode.com/files/redis-2.2.11.tar.gz
tar xzvf redis-2.2.11.tar.gz

 (2) 编译并安装Redis

make && make install

 (3) 复制并修改配置文件

cp redis.conf /etc/redis.conf
vi /etc/redis.conf

注意修改以下几项:

daemonize yes
loglevel warning
logfile /var/log/redis.log
maxmemory 2GB

(自行斟酌是不要开通Virtual Memory选项)

 (4) 设置Redis-Server自动启动服务

上网下载启动脚本(gist.github.com,搜索redis init.d),并简单修改

(至少需要修改redis、REDIS_CONF_FILE)

vi /etc/init.d/redisctl
chmod 755 redisctl
cp /etc/init.d/redisctl /etc/rc.d/init.d/redisctl && ln -s /etc/init.d/redisctl /etc/rc.d/rc2.d/S90redisctl && ln -s /etc/init.d/redisctl /etc/rc.d/rc3.d/S90redisctl && ln -s /etc/init.d/redisctl /etc/rc.d/rc4.d/S90redisctl && ln -s /etc/init.d/mongod /etc/rc.d/rc5.d/S90redisctl
chkconfig --add redisctl

(5) 重新启动后可以测试redis-server是否正常启动

```redis-cli set foo Bar
redis-cli get foo

Redis自动启动脚本

```ruby
#!/bin/sh
#
# redis - this script starts and stops the redis-server daemon
#
# chkconfig: 2345 90 10 
# description: Redis is a persistent key-value database
# processname: redis-server
# config: /etc/redis.conf
# config: /etc/sysconfig/redis
# pidfile: /var/run/redis.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

redis="/usr/local/bin/redis-server"
prog=$(basename $redis)

REDIS_CONF_FILE="/etc/redis.conf"

[ -f /etc/sysconfig/redis ] && . /etc/sysconfig/redis

lockfile=/var/lock/subsys/redis

start() {
 [ -x $redis ] || exit 5
 [ -f $REDIS_CONF_FILE ] || exit 6
 echo -n $"Starting $prog: "
 daemon $redis $REDIS_CONF_FILE
 retval=$"Stopping $prog: "
 killproc $prog -QUIT
 retval=$"Reloading $prog: "
 killproc $redis -HUP
 RETVAL=$"$1" in
 start)
 rh_status_q && exit 0
 $1
 ;;
 stop)
 rh_status_q || exit 0
 $1
 ;;
 restart|configtest)
 $1
 retval=$"Reloading $prog: "
 killproc $redis -HUP
 RETVAL=$"$1" in
 start)
 rh_status_q && exit 0
 $1
 ;;
 stop)
 rh_status_q || exit 0
 $1
 ;;
 restart|configtest)
 $1
 retval=$"Reloading $prog: "
 killproc $redis -HUP
 RETVAL=$"$1" in
 start)
 rh_status_q && exit 0
 $1
 ;;
 stop)
 rh_status_q || exit 0
 $1
 ;;
 restart|configtest)
 $1
 ;;
 reload)
 rh_status_q || exit 7
 $1
 ;;
 force-reload)
 force_reload
 ;;
 status)
 rh_status
 ;;
 condrestart|try-restart)
 rh_status_q || exit 0
  ;;
 *)
 echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
 exit 2
esac

Redis自动启动脚本

记得修改:

(1) —chuid group:user

(2) ln /etc/init.d/redisctl /etc/rc2.d/redisctl,重复rc3,rc4,rc5

启动脚本:

#! /bin/sh
### BEGIN INIT INFO
# Provides:  redis-server
# Required-Start: $syslog
# Required-Stop: $syslog
# Should-Start:  $local_fs
# Should-Stop:  $local_fs
# Default-Start: 2 3 4 5
# Default-Stop:  0 1 6
# Short-Description: redis-server - Persistent key-value db
# Description:  redis-server - Persistent key-value db
### END INIT INFO

DAEMON=/usr/local/bin/redis-server
DAEMON_ARGS=/etc/redis.conf
NAME=redis-server
DESC=redis-server
PIDFILE=/var/run/redis.pid
test -x $DAEMON || exit 0
test -x $DAEMONBOOTSTRAP || exit 0
set -e
case "$1" in
 start)
 echo -n "Starting $DESC: "
 touch $PIDFILE
 # chown redis:redis $PIDFILE
 if start-stop-daemon —start —quiet —umask 007 —pidfile $PIDFILE —chuid redis:redis —exec $DAEMON — $DAEMON_ARGS
 then
  echo "$NAME."
 else
  echo "failed"
 fi
 ;;
 stop)
 echo -n "Stopping $DESC: "
 if start-stop-daemon —stop —retry 10 —quiet —oknodo —pidfile $PIDFILE —exec $DAEMON
 then
  echo "$NAME."
 else
  echo "failed"
 fi
 rm -f $PIDFILE
 ;;
 restart|force-reload)
 ${0} stop
 ${0} start
 ;;
 *)
 echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
 exit 1
 ;;
esac
exit 0

上一篇:Ruby与Ruby on Rails框架环境搭建的简明教程
下一篇:Ruby中的gem包管理的使用及gem源搭建教程
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap