GVKun编程网logo

centos 安装redis(centos安装redis 并且配置)

11

以上就是给各位分享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 安装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

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

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

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

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版本:

redis-cli --version


设置为开机自动启动:
chkconfig redis on
或者
systemctl enable redis.service
redis开启远程登录连接,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 安装rediscentos安装redis 并且配置的分享就到这里,谢谢您的阅读,如果想了解更多关于CentOS 6.5 安装Redis、CentOS 6.8 下 安装Redis 3.2.8、centos 6.8 安装redis、centOS 7 安装redis的相关信息,可以在本站进行搜索。

本文标签: