redis 编译安装(生产环境推荐)
一、安装redis
1、下载redis包
wget http://download.redis.io/releases/redis-3.2.1.tar.gz
2、解压redis包到/opt下
tar -zxvf /home/redis-3.2.1.tar.gz -C /opt
3、安装并测试redis
cd /opt/redis-3.2.1/src
make && make install
make test
备注:若make test报错,提示安装tcl,则进行tcl的安装;
二、配置redis
1、复制并修改配置文档
cp /opt/redis-3.2.1/redis.conf /etc/
vi /etc/redis.conf
#开启redis远程访问
#将 bind 127.0.0.1改为 bind 0.0.0.0
#开启redis守护进程
#根据需求,可配置redis是否进行持久化:修改save策略
#添加密码访问 requirepass password
2、将redis配置进系统服务
vi /etc/init.d/redis
/etc/init.d/redis内容如下
#chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
###########################
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_6379.pid
CONF="/etc/redis.conf"
PASSWORD=password
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 does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
#若有密码则加上密码
#$REDIS_CLI -a $PASSWORD -p $REDISPORT SHUTDOWN
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
##############################
#给redis文件加上执行权限
chmod +x /etc/init.d/redis
3、设置redis服务开机启动
chkconfig redis on
4、在防火墙中开放redis端口
vi /etc/sysconfig/iptables
#加入下面的端口配置
-A INPUT -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT
#重启防火墙
service iptables restart
5、启动、关闭和重启redis服务
service redis start
service redis stop
service redis restart
三、使用redis
#进入redis命令行
redis-cli -a password
3.master配置了密码,slave如何配置
若master配置了密码则slave也要配置相应的密码参数否则无法进行正常复制的。
slave中配置文件内找到如下行,移除注释,修改密码即可
- #masterauth mstpassword
最新文章
- barabasilab-networkScience学习笔记4-无标度特征
- docker入门的文章
- qt 设置背景图片
- angular 管理后台
- iptables/netfilter命令、实现及利用(转)
- Ubuntu14.04 安装QQ国际版wine-qqintl
- PendingIntent详解
- C#控制台或应用程序中两个多个Main()方法的可行性方案
- Selenium 定位网页元素
- Asp.Net MVC4 系列-- 进阶篇之路由(1)
- .Net Core ----通过XUnit进行接口单元测试(带请求头及参数)并用output输出结果
- android 重启app
- Navicat---使用SSH远程连接到MySql,报错80070007: SSH Tunnel: Server does not support diffie-hellman-group1-sha1 for keyexchange
- [leetcode]139. Word Break单词能否拆分
- 常常忘记但是很重要的sql语句
- Grapher - Change how graphs look
- MultipartFile的使用小结
- CentOS6安装各种大数据软件 第九章:Hue大数据可视化工具安装和配置
- paoding rose controller包及文件名命名规则
- Android开发大纲
热门文章
- 微信小程序-开发入门
- MyBatis解决字段名与实体类属性名不相同的冲突(四)
- 初识 Javascript.02 -- Date日期、Math对象、数据类型转换、字符串、布尔Boolean、逻辑运算符、if else 、三元表达式、代码调试方法、
- pg_config executable not found
- 一个关于Linux升级Python后yum的小问题
- Java进阶之网络编程
- [原]C#与非托管——初体验
- POPTEST老李分享DOM解析XML之java
- 1.熟悉Java基本类库系列 - 目录
- Python javascript操作DOM