以上就是给各位分享centos安装redis,其中也会对centos安装redis并且配置进行解释,同时本文还将给你拓展CentOS6.5安装Redis、CentOS6.8下安装Redis3.2.8、
以上就是给各位分享centos 安装redis,其中也会对centos安装redis 并且配置进行解释,同时本文还将给你拓展CentOS 6.5 安装Redis、CentOS 6.8 下 安装Redis 3.2.8、centos 6.8 安装redis、centOS 7 安装redis等相关知识,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:- centos 安装redis(centos安装redis 并且配置)
- CentOS 6.5 安装Redis
- CentOS 6.8 下 安装Redis 3.2.8
- centos 6.8 安装redis
- centOS 7 安装redis
centos 安装redis(centos安装redis 并且配置)
一 下载
二 编译
解压目录下make
解压目录的src目录下make install
三 安装
make PREFIX=/usr/local/redis install #PREFIX=/usr/local/redis可以省略,省略情况下redis会默认安装到/usr/local/bin目录下
四 配置启动
1 启动脚本 源码util目录下redis_init_script 复制到/etc/init.d/目录下
#据说后台服务习惯加个后缀d cp redis_init_script /etc/init.d/redisd
2 redis配置文件在解压目录下redis.conf 复制到 /etc/redis/6379.conf (按照启动脚本中要求,改名6379.config,也可以不改名,把启动脚本中的conf属性改掉)
#先建个目录 mkdir /etc/redis #再复制,复制以后文件名改成了6379.conf #因为启动脚本中有以下两句 #REdisPORT=6379 #CONF="/etc/redis/${REdisPORT}.conf" cp redis.conf /etc/redis/6379.conf
之后可以 service redisd start,service redisd stop 启动和停止redis服务了
五 conf文件中的其他配置
daemonize yes #确保守护进程开启 后台运行 pidfile /usr/local/redis/redis.pid logfile /usr/local/redis/log dir /usr/local/redis/db
六 问题:停止服务时,noauth authentication required 错误
如果redis设了密码,启动服务,再停止服务时,会出现 noauth authentication required 错误
修改启动脚本 /etc/init.d/redisd
EXEC=/usr/local/bin/redis-server CLIEXEC=/usr/local/bin/redis-cli PIDFILE=/var/run/redis_6379.pid CONF="/etc/redis/redis.conf" REdisPORT="6379" #这里把redis密码写上 也可以PASSWORD="your password" PASSWORD=$(cat $CONF|grep ‘^\s*requirepass‘|awk ‘{print $2}‘|sed ‘s/"//g‘) if [ -z $PASSWORD ] then $CLIEXEC -p $REdisPORT shutdown else #这一行添加了 -a $PASSWORD $CLIEXEC -a $PASSWORD -p $REdisPORT shutdown fi #$CLIEXEC -a $PASSWORD -p $REdisPORT shutdown
CentOS 6.5 安装Redis
1.安装gcc-c++
2.下载并安装redis
参照 http://www.cnblogs.com/haoxinyue/p/3620648.html
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
3.执行测试代码
yum install -y tcl
make test
4.安装redis
cp src/redis-server /usr/local/bin/
cp src/redis-cli /usr/local/bin/
mkdir /etc/redis /var/redis/var/redis/log /var/redis/run /var/redis/6379
cp redis.conf /etc/redis/6379.conf
vi /etc/redis/6379.conf
daemonize yes
pidfile /var/redis/run/redis_6379.pid
logfile /var/redis/log/redis_6379.log
dir /var/redis/6379
#bind 127.0.0.1 ## 注释此行用于redis在外部访问
protected-mode no ## 改成no是为了非本地访问时,既不绑定ip也不设置密码
###注释下方3条语句并加上save "",禁止redis启用rdb缓存
#save 900 1
#save 300 10
#save 60 10000
save ""
5.运行redis
$ redis-server /etc/redis/6379.conf
6.设置redis自启动 cp utils/redis_init_script /etc/init.d/redis vi /etc/init.d/redis #!/bin/sh # # chkconfig: 2345 90 10 # description: Redis is a persistent key-value database ...
chkconfig /etc/init.d/redis on
CentOS 6.8 下 安装Redis 3.2.8
一、单实例安装
1、安装依赖
yum install gcc-c++ yum install -y tcl yum install wget yum install vim
2、获取安装文件并解压安装
wget http://download.redis.io/releases/redis-3.2.8.tar.gz tar xzf redis-3.2.8.tar.gz cd redis-3.2.8 make make install
3、修改配置文件
vi redis.conf #1.设置为后台运行 daemonize no 改为 daemonize yes #2.修改默认端口 port 6379 改为 port 7963 #3.修改pidfile pidfile /var/run/redis_6379.pid 改为 pidfile /var/run/redis_7963.pid #4.设置日志级别 loglevel notice 改为 loglevel notice #5.修改日志文件路径 logfile "" 改为 logfile "/var/log/redis_7963.log" 复制配置文件到常用目录 mkdir -p /etc/redis/ cp redis.conf /etc/redis/redis_7963.conf
4、启动redis并连接测试
cd /etc/redis/ /usr/local/bin/redis-server redis_7963.conf /usr/local/bin/redis-cli -p 7963 127.0.0.1:7963> keys * (empty list or set) 127.0.0.1:7963> set test "hello redis" OK 127.0.0.1:7963> keys * 1) "test" 127.0.0.1:7963> get test "hello redis" 127.0.0.1:7963> del test (integer) 1 127.0.0.1:7963> keys * (empty list or set) 127.0.0.1:7963> exit
5、关闭Redis
#方案一: /usr/local/bin/redis-cli -p 7963 shutdown #方案二: netstat -lntp | grep 7963 #查看端口是否被占用 ps -ef|grep redis root 4726 1 0 10:33 ? 00:00:00 /usr/local/bin/redis-server 127.0.0.1:7963 root 4731 1253 0 10:40 pts/0 00:00:00 grep redis kill -9 4726 #备注说明:由于Redis可以接收并处理SIGTERM信号,所以直接使用kill -9 PID,是可以安全结束进程的; 另外:有两个信号可以停止进程,分别为:SIGTERM和SIGKILL SIGTERM用于提醒进程关闭,进程可以在关闭之前,结束打开的文件记录和完成正在进行的任务,如果有些任务不能中断,则可以忽略SIGTERM信号; SIGKILL则是强制关闭进程,即表示不管进程在做什么,应该马上关闭
6、设置开机启动
echo "/usr/local/bin/redis-server /etc/redis/redis_7963.conf" >> /etc/rc.local #注意:开机启动需要配置在rc.local中,而/etc/profile文件需要有用户登录才会被执行
二、单机多实例安装Cluster
1、创建集群需要的节点文件夹
mkdir -p /data/cluster/7000 mkdir -p /data/cluster/7001 mkdir -p /data/cluster/7003 mkdir -p /data/cluster/7004 mkdir -p /data/cluster/7002 mkdir -p /data/cluster/7005
2、创建配置文件
cd /data/cluster/7000 #复制配置文件 cp /etc/redis/redis_7963.conf redis.conf #修改配置文件 vim redis.conf port 7000 #设置端口号 daemonize yes #设置为后台运行 cluster-enabled yes #开启集群模式 cluster-config-file nodes.conf #节点配置文件路径 cluster-node-timeout 5000 #节点超时时间,单位:毫秒 appendonly yes #开启AOF持久化,防止数据在硬盘丢失 #复制配置文件,并修改端口号 cp redis.conf ../7001 cp redis.conf ../7002 cp redis.conf ../7003 cp redis.conf ../7004 cp redis.conf ../7005 vim ../7001/redis.conf vim ../7002/redis.conf vim ../7003/redis.conf vim ../7004/redis.conf vim ../7005/redis.conf
3、启动集群节点
redis-server redis.conf cd /data/cluster/7001 redis-server redis.conf cd /data/cluster/7002 redis-server redis.conf cd /data/cluster/7003 redis-server redis.conf cd /data/cluster/7004 redis-server redis.conf cd /data/cluster/7005 redis-server redis.conf #查看redis启动进程 ps -ef|grep redis root 1170 1 0 11:05 ? 00:00:32 /usr/local/bin/redis-server 127.0.0.1:7963 root 1311 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7000 [cluster] root 1315 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7001 [cluster] root 1319 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7002 [cluster] root 1323 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7003 [cluster] root 1327 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7004 [cluster] root 1331 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7005 [cluster] root 1338 1202 0 16:17 pts/0 00:00:00 grep redis
4、安装依赖并且创建集群
#安装ruby、rubygems yum install ruby rubygems -y #安装gem-redis cd /opt/ wget https://rubygems.org/downloads/redis-3.3.3.gem gem install -l redis-3.3.3.gem #复制管理程序 cp redis-3.2.8/src/redis-trib.rb /usr/local/bin/redis-trib #创建集群 redis-trib create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 >>> Creating cluster >>> Performing hash slots allocation on 6 nodes... Using 3 masters: 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 Adding replica 127.0.0.1:7003 to 127.0.0.1:7000 Adding replica 127.0.0.1:7004 to 127.0.0.1:7001 Adding replica 127.0.0.1:7005 to 127.0.0.1:7002 M: af244fe9be7256039357fbf463f8f689544323d1 127.0.0.1:7000 slots:0-5460 (5461 slots) master M: 88e426f2501bea4bc17a2a458beb9c57a7321157 127.0.0.1:7001 slots:5461-10922 (5462 slots) master M: 79dd52da7a66cec1508b2ab75a439a79fa8678bc 127.0.0.1:7002 slots:10923-16383 (5461 slots) master S: abfb133576837b9c7dfcfadbe8e2fca47d14a41d 127.0.0.1:7003 replicates af244fe9be7256039357fbf463f8f689544323d1 S: e1d18594b8b322c264757b7b396a70bcba913968 127.0.0.1:7004 replicates 88e426f2501bea4bc17a2a458beb9c57a7321157 S: f2bb24dcc4eed871bc4ab7e56eebce9e72e37f44 127.0.0.1:7005 replicates 79dd52da7a66cec1508b2ab75a439a79fa8678bc Can I set the above configuration? (type 'yes' to accept): yes #输入yes后继续执行,如下: >>> Nodes configuration updated >>> Assign a different config epoch to each node >>> Sending CLUSTER MEET messages to join the cluster Waiting for the cluster to join.. >>> Performing Cluster Check (using node 127.0.0.1:7000) M: af244fe9be7256039357fbf463f8f689544323d1 127.0.0.1:7000 slots:0-5460 (5461 slots) master 1 additional replica(s) M: 88e426f2501bea4bc17a2a458beb9c57a7321157 127.0.0.1:7001 slots:5461-10922 (5462 slots) master 1 additional replica(s) S: f2bb24dcc4eed871bc4ab7e56eebce9e72e37f44 127.0.0.1:7005 slots: (0 slots) slave replicates 79dd52da7a66cec1508b2ab75a439a79fa8678bc S: abfb133576837b9c7dfcfadbe8e2fca47d14a41d 127.0.0.1:7003 slots: (0 slots) slave replicates af244fe9be7256039357fbf463f8f689544323d1 M: 79dd52da7a66cec1508b2ab75a439a79fa8678bc 127.0.0.1:7002 slots:10923-16383 (5461 slots) master 1 additional replica(s) S: e1d18594b8b322c264757b7b396a70bcba913968 127.0.0.1:7004 slots: (0 slots) slave replicates 88e426f2501bea4bc17a2a458beb9c57a7321157 [OK] All nodes agree about slots configuration. >>> Check for open slots... >>> Check slots coverage... [OK] All 16384 slots covered. #检查集群状态 redis-cli -p 7000 cluster nodes 88e426f2501bea4bc17a2a458beb9c57a7321157 127.0.0.1:7001 master - 0 1490776018194 2 connected 5461-10922 f2bb24dcc4eed871bc4ab7e56eebce9e72e37f44 127.0.0.1:7005 slave 79dd52da7a66cec1508b2ab75a439a79fa8678bc 0 1490776020201 6 connected abfb133576837b9c7dfcfadbe8e2fca47d14a41d 127.0.0.1:7003 slave af244fe9be7256039357fbf463f8f689544323d1 0 1490776019197 4 connected 79dd52da7a66cec1508b2ab75a439a79fa8678bc 127.0.0.1:7002 master - 0 1490776018696 3 connected 10923-16383 e1d18594b8b322c264757b7b396a70bcba913968 127.0.0.1:7004 slave 88e426f2501bea4bc17a2a458beb9c57a7321157 0 1490776019699 5 connected af244fe9be7256039357fbf463f8f689544323d1 127.0.0.1:7000 myself,master - 0 0 1 connected 0-5460
5、测试集群节点写入
redis-cli -p 7000 127.0.0.1:7000> keys * (empty list or set) 127.0.0.1:7000> set test "hello redis cluster" (error) MOVED 6918 127.0.0.1:7001 127.0.0.1:7000> exit #7000,写入失败,换为7001进行写入测试 redis-cli -p 7001 127.0.0.1:7001> set test "hello redis cluster" OK 127.0.0.1:7001> keys * 1) "test" 127.0.0.1:7001> get test "hello redis cluster" 127.0.0.1:7001> exit
6、测试集群节点故障
ps -ef|grep redis root 1170 1 0 11:05 ? 00:00:33 /usr/local/bin/redis-server 127.0.0.1:7963 root 1311 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7000 [cluster] root 1315 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7001 [cluster] root 1319 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7002 [cluster] root 1323 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7003 [cluster] root 1327 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7004 [cluster] root 1331 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7005 [cluster] root 1374 1202 0 16:28 pts/0 00:00:00 grep redis kill 1311 ps -ef|grep redis root 1170 1 0 11:05 ? 00:00:33 /usr/local/bin/redis-server 127.0.0.1:7963 root 1315 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7001 [cluster] root 1319 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7002 [cluster] root 1323 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7003 [cluster] root 1327 1 0 16:16 ? 00:00:01 redis-server 127.0.0.1:7004 [cluster] root 1331 1 0 16:16 ? 00:00:00 redis-server 127.0.0.1:7005 [cluster] root 1376 1202 0 16:29 pts/0 00:00:00 grep redis #测试是否能连接到7000 redis-cli -p 7000 cluster nodes Could not connect to Redis at 127.0.0.1:7000: Connection refused #7000无法连接,改为连接到7001 redis-cli -p 7001 cluster nodes f2bb24dcc4eed871bc4ab7e56eebce9e72e37f44 127.0.0.1:7005 slave 79dd52da7a66cec1508b2ab75a439a79fa8678bc 0 1490776164137 3 connected af244fe9be7256039357fbf463f8f689544323d1 127.0.0.1:7000 master,fail - 1490776153654 1490776152049 1 disconnected 79dd52da7a66cec1508b2ab75a439a79fa8678bc 127.0.0.1:7002 master - 0 1490776164137 3 connected 10923-16383 e1d18594b8b322c264757b7b396a70bcba913968 127.0.0.1:7004 slave 88e426f2501bea4bc17a2a458beb9c57a7321157 0 1490776162122 2 connected abfb133576837b9c7dfcfadbe8e2fca47d14a41d 127.0.0.1:7003 master - 0 1490776163633 7 connected 0-5460 88e426f2501bea4bc17a2a458beb9c57a7321157 127.0.0.1:7001 myself,master - 0 0 2 connected 5461-10922 #集群节点中,7000连接已丢失,再次尝试读取及写入 127.0.0.1:7001> keys * 1) "test" 127.0.0.1:7001> get test "hello redis cluster" 127.0.0.1:7001> set test1 "kill a node,try write" (error) MOVED 4768 127.0.0.1:7003 127.0.0.1:7001> exit #从7001中写入 key=test1失败,改为从7003写入测试 redis-cli -p 7003 127.0.0.1:7003> set test1 "kill a node,try write" OK 127.0.0.1:7003> keys * 1) "test1" 127.0.0.1:7003> get test (error) MOVED 6918 127.0.0.1:7001 127.0.0.1:7003> get test1 "kill a node,try write" 127.0.0.1:7003> exit #恢复节点 cd /data/cluster/7000 redis-server redis.conf #查看集群节点状态 redis-cli -p 7000 cluster nodes af244fe9be7256039357fbf463f8f689544323d1 127.0.0.1:7000 myself,slave abfb133576837b9c7dfcfadbe8e2fca47d14a41d 0 0 1 connected abfb133576837b9c7dfcfadbe8e2fca47d14a41d 127.0.0.1:7003 master - 0 1490778603081 7 connected 0-5460 e1d18594b8b322c264757b7b396a70bcba913968 127.0.0.1:7004 slave 88e426f2501bea4bc17a2a458beb9c57a7321157 0 1490778602075 5 connected f2bb24dcc4eed871bc4ab7e56eebce9e72e37f44 127.0.0.1:7005 slave 79dd52da7a66cec1508b2ab75a439a79fa8678bc 0 1490778603582 6 connected 79dd52da7a66cec1508b2ab75a439a79fa8678bc 127.0.0.1:7002 master - 0 1490778602578 3 connected 10923-16383 88e426f2501bea4bc17a2a458beb9c57a7321157 127.0.0.1:7001 master - 0 1490778601574 2 connected 5461-10922
参考资料:http://www.cnblogs.com/goMysqL/p/4395504.html
centos 6.8 安装redis
通过wget命令下载 Redis 源代码
wget http://download.redis.io/releases/redis-3.2.6.tar.gz
1、通过tar -xvf redis-3.0.2.tar.gz命令解压下载Redis源码压缩包redis-3.0.2.tar.gz;
编译前记得先装 gcc
yum install gcc
2、编译Redis。通过cd redis-3.0.2/进入Redis源码目录内,执行make编译Redis;
注意:make命令执行完成编译后,会在src目录下生成6个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump、redis-sentinel。
安装Redis,执行make install
执行./utils/install_server.sh配置Redis配置之后Redis能随系统启动。
Redis服务查看、开启、关闭
1、通过ps -ef|grep redis命令查看Redis进程;
2、开启Redis服务操作通过/etc/init.d/redis_6379 start命令,也可通过(service redis_6379 start);
3、关闭Redis服务操作通过/etc/init.d/redis_6379 stop命令,也可通过(service redis_6379 stop);
centOS 7 安装redis
如果使用yum 安装的redis不会是最新版的redis
yum install redis如果要安装最新的redis,则需要安装Remi的软件源,官网地址:http://rpms.famillecollet.com/
yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm执行安装:
yum --enablerepo=remi install redis启动redis服务
service redis start或者
systemctl start redis
redis安装完毕后,我们来查看下redis安装时创建的相关文件,如下:
rpm -qa |grep redis
rpm -ql redis
redis-cli --version
chkconfig redis on或者
systemctl enable redis.serviceredis开启远程登录连接,redis默认只能localhost访问,所以需要开启远程登录。解决方法如下:
在redis的配置文件/etc/redis.conf中
将bind 127.0.0.1 改成了 bind 0.0.0.0
然后要配置防火墙 开放端口6379
[root@localhost ~]# firewall-cmd --query-port=6379/tcp no
CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下
1、直接关闭防火墙
systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动
2、设置 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口6379,编辑iptables
vim /etc/sysconfig/iptables
增加规则 (允许6379使用tcp协议连接)- A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
重启centOS
shutdown -r Now
服务器连接redis
redis-cli
客户端连接redis
我们今天的关于centos 安装redis和centos安装redis 并且配置的分享就到这里,谢谢您的阅读,如果想了解更多关于CentOS 6.5 安装Redis、CentOS 6.8 下 安装Redis 3.2.8、centos 6.8 安装redis、centOS 7 安装redis的相关信息,可以在本站进行搜索。
本文标签: