CentOS 7 yum 安装redis 并启动多个实例

一、Redis概述

  Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value(键值型)数据库(非关系型数据库),并提供多种语言的API。

  Redis是一个高性能的Key-Value数据库。它的出现很大程度补偿来Memcached这类Key-Value型存储的不足,在部分场合下可以对关系型数据库起到很好的补充作用。它提供来Java、C/C++、PHP、JavaScript、Perl、Object-C、Python、Ruby、Erlang等客户端,使用方便。

  Redis支持主从同步,Redis能够借助于Sentinel(哨兵,Redis自带的)工具来监控主从节点,当主节点发生故障时,会自己提升另外一个从节点成为新的主节点。

 1)支持的数据类型

  和Memcached类似,但它支持存储的Value类型相对更多,包括String(字符串)、List(列表)、Sets(集合)、Sorted Sets(有序集合)和Hash(哈希类型、关联数组)、Bitmaps(位图)和HyperLoglog。

 2)性能

  100万较小的键存储字符串,大概消耗100M内存;

  由于Redis是单线程,如果服务器主机上有多个CPU,只有一个能够使用,但并不意味着CPU会成为瓶颈,因为Redis是一个比较简单的K-V数据存储,CPU通常不会成为瓶颈的;

  在常见的linux服务器上,500K(50万)的并发,只需要一秒钟处理,如果主机硬件较好的情况下,每秒钟可以达到上百万的并发.

 3)Redis与Memcache对比

  Memcache只能使用内存来缓存对象。而Redis除了可以使用内存来缓存对像,还可以周期性的将数据保存到磁盘上,对数据进行永久存储。当服务器突然断电或死机后, redis基于磁盘中的数据进行恢复;

  Redis是单线程服务器,只有一个线程来响应所有的请求。Memcache是多线程的;

  Redis支持更多的数据类型。


二、安装

  yum安装redis时,建议使用Remi repository源。因为Remi源提供了目前最新版本的Redis,可以通该源使用YUM安装目前最新版本的Redis。另外还提供了PHP和MySQL的最新yum源,以及相关服务程序。

1)Remi repository源依赖于epel源,因此需要先安装epel源

# yum -y install epel-release

2)安装Remi repository源

# yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

# ls /etc/yum.repos.d/

image.png

3)使用指定的yum源安装Redis

#yum --enablerepo=remi install -y redis  //--enablerepo指定yum源

# redis-cli --version  //安装完成后使用命令查看一下版本

image.png


三、配置多实例

  1. 创建目录:

 mkdir /etc/redis/ -p    //实例配置文件目录

 mkdir -p /var/lib/redis/{6379..6383} //创建redis  数据目录

2.复制默认的配置文件以创建新的配置

#cp /etc/redis.conf   /etc/redis/redis_6379.conf

#cp /etc/redis.conf    /etc/redis/redis_6380.conf

# cp /etc/redis.conf   /etc/redis/redis_6381.conf

# cp /etc/redis.conf    /etc/redis/redis_6382.conf

# cp /etc/redis.conf    /etc/redis/redis_6383.conf


2.打开新的配置文件进行编辑(对应修改)

vim /etc/redis/redis_6379.conf  

#修改以下几处:

port 6379

pidfile /var/run/redis_6379.pid
logfile /var/log/redis/redis_6379.log
dbfilename dump_6379.rdb
dir /var/lib/redis


3.配置服务方式启动


# 复制默认的服务配置文件以创建新的服务配置

#cp /usr/lib/systemd/system/redis.service /usr/lib/systemd/system/redis_6379.service

# 打开新的服务配置文件进行修改

#vim /usr/lib/systemd/system/redis_6379.service


修改后的内容如下:


[Unit]

Description=redis_6379, port 6379

After=redis.service

 

[Service]

ExecStart=/usr/bin/redis-server /etc/redis/redis_6379.conf --supervised systemd

ExecStop=/usr/bin/redis-cli -p 6379 shutdown

Type=notify

Uset=redis

Group=redis

RuntimeDirectory=redis_6379

RuntimeDirectoryMode=0755

 

[Install]

WantedBy=multi-user.target


image.png

#追加生成多份,并修改对应端口。

#cd  /usr/lib/systemd/system/   #切换到此目录下

#cat redis_6379.service >redis_6380.service 

# cat redis_6379.service >redis_6381.service 

#cat redis_6379.service >redis_6382.service 

# cat redis_6379.service >redis_6383.service 


更新服务组件:

systemctl daemon-reload

启动redis多个实例,并设置开机自启动:

(1)设置多个实例开机启动

# systemctl enable redis_6379.service 

# systemctl enable redis_6380.service   

# systemctl enable redis_6381.service   

# systemctl enable redis_6382.service  

# systemctl enable redis_6383.service

(2)启动多个实例

#systemctl start redis_6379.service

# systemctl start redis_6380.service

#  systemctl start redis_6381.service

# systemctl start redis_6382.service


(3)查看是否启动成功

image.png


作者头像
萧萧一风创始人

做一个积极主动热情的人,为了想要完成的事情和实现的目标,拼命投入力量。

上一篇:configure: error: Cannot find pspell
下一篇:进行各种文件的权限设置时 sudo:sudo /etc/sudoers is world writable

发表评论