转载地址:http://2015.iteye.com/blog/1189527
1、下载安装
- wget http://redis.googlecode.com/files/redis-2.2.13.tar.gz
- tar -xvzf redis-2.2.13.tar.gz
- cd redis-2.2.13
- make
- sudo make install
这时Redis的可执行文件被放到了/usr/local/bin
2、下载配置文件和init启动脚本
- wget https://github.com/ijonas/dotfiles/raw/master/etc/init.d/redis-server --no-check-certificate
- wget https://github.com/ijonas/dotfiles/raw/master/etc/redis.conf --no-check-certificate
- sudo mv redis-server /etc/init.d/redis-server
- sudo chmod +x /etc/init.d/redis-server
- sudo mv redis.conf /etc/redis.conf
3、初始化用户和日志路径
第一次启动Redis前,建议为Redis单独建立一个用户,并新建data和日志文件夹。
- sudo useradd redis
- sudo mkdir -p /var/lib/redis
- sudo mkdir -p /var/log/redis
- sudo chown redis.redis /var/lib/redis
- sudo chown redis.redis /var/log/redis
4、启动Redis
- sudo /etc/init.d/redis-server start
5、启动client客户端连接
- redis-cli
6、示例
- redis 127.0.0.1:6379> set user gaohf
- OK
- redis 127.0.0.1:6379> get user
- "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文件里的内容替换成以下内容:
- #!/bin/sh
- #
- # redis - this script starts and stops the redis-server daemon
- #
- # chkconfig: - 85 15
- # 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=$?
- echo
- [ $retval -eq 0 ] && touch $lockfile
- return $retval
- }
- stop() {
- echo -n $"Stopping $prog: "
- killproc $prog -QUIT
- retval=$?
- echo
- [ $retval -eq 0 ] && rm -f $lockfile
- return $retval
- }
- restart() {
- stop
- start
- }
- reload() {
- echo -n $"Reloading $prog: "
- killproc $redis -HUP
- RETVAL=$?
- echo
- }
- force_reload() {
- restart
- }
- rh_status() {
- status $prog
- }
- rh_status_q() {
- rh_status >/dev/null 2>&1
- }
- case "$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-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文件,增加以下一句即可:
- really-use-vm yes