一台服务器搭建部署两个或多个Redis实例
问题描述:
今天程序那边说测试服里面有两个项目,为了数据不冲突,想一台服务器搞两个Redis实例,
然后自己这边查询了一下,确实可以这么整,只需要区分端口号和区分配置文件方面就行,
原理与nginx和tomcat等添加容器单实例多应用应该差不多,做个笔记记录一下。
1、复制新的配置文件,改变配置名称
2、修改配置文件里面的端口号、PID文件路径以及日志文件路径、 转储文件路径,确保两个或者多个redis服务不会冲突。
我这边搭建的Redis目录:
redis data directory : /data/redis/redis6379/data
redis log directory : /data/redis/redis6379/logs
redis install directory : /usr/local/redis
redis config file directory : /etc/
redis startup script : /etc/init.d/redis
可以指定端口启动多个Redis进程。
解决方法:
1、切换到redis目录,新建个redis数据和日志目录
[root@tse1 redis]# mkdir -p /data/redis/redis6380/{data,logs}
[root@tse1 redis6380]# pwd
/data/redis/redis6380
2、切换到redis配置文件目录cp一份redis配置文件
#复制新的配置文件给第二个redis使用 [root@tse1 etc]# cp /etc/redis.conf redis6380.conf #配置新redis文件,避免两个redis冲突,在配置文件按照如下几个参数进行修改; [root@tse1 etc]# vim redis6380.conf 配置参数: #修改新的pid文件路径
pidfile /data/redis/redis6380/logs/redis6380.pid #指定新的端口号
port #指定新的日志文件路径
logfile "/data/redis/redis6380/logs/redis6380.log"
#指定新的数据文件路径
dir /data/redis/redis6380/data/
#指定新的转储文件路径
dbfilename dump6380.rdb #配置文件修改完成:wq保存退出
3、修改启动脚本
[root@tse1 ~]# cp /etc/init.d/redis /etc/init.d/redis6380 [root@tse1 init.d]# vim redis6380
4、关于启动脚本可以参考我另一篇文章介绍,修改相应参数即可
Centos7下Redis设置开机自启动服务:
https://www.cnblogs.com/Sungeek/p/11691231.html
5、如果上面服务都已配置完成,就可以直接启动查看是否成功
[root@tse1 /]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 127.0.0.1: 0.0.0.0:* LISTEN /redis-server
tcp 192.168.15.163: 0.0.0.0:* LISTEN /redis-server
tcp 127.0.0.1: 0.0.0.0:* LISTEN /redis-server
tcp 192.168.15.163: 0.0.0.0:* LISTEN /redis-server

6、客户端连接测试
[root@tse1 /]# /usr/local/redis/src/redis-cli -h 127.0.0.1 -p -a redis密码
127.0.0.1:> PING
PONG
127.0.0.1:> [root@tse1 /]# /usr/local/redis/src/redis-cli -h 127.0.0.1 -p -a redis密码
127.0.0.1:> PING
PONG
127.0.0.1:>

一台服务器搭建部署两个或多个Redis实例的更多相关文章
- 如何在同一台服务器上部署两个tomcat
因为测试的需要,有时我们必须在同一个服务器上部署两个tomcat,然后去做应用的部署,那么很多同学可能会觉得比较为难,找的资料也比较的不齐全,那么今天华华就来给大家讲讲如何部署2个tomcat,并能够 ...
- nodejs在同一台服务器上部署并同时运行两个或以上服务端时,一个服务用户登录后会挤掉另一个用户的问题
问题描述:一台服务器,部署了两个或以上不同的Web服务,服务A的用户在登陆后,服务B的用户也登陆,此时服务A的用户在点击页面时,会返回登陆页面. 问题根源:浏览器保存的session相同,即cooki ...
- 俩台服务器搭建redis集群5.0.4
俩台服务器搭建redis集群 1.俩服务器分别新建目录:usr/local/redis-cluster 2.下载源码并解压编译(使用redis版本5.0.4) 3.tar xzf redis-5.0. ...
- 如何在一台服务器上安装两个mysql或者更多
如何在一台服务器上安装两个mysql 1 前言 上篇写了在一台机器上源码编译安装一个mysql,那么如何在一台机器上源码编译安装两个mysql或者更多呢? 2 环境 mysql ...
- 【tomcat环境搭建】一台服务器上部署多个tomcat
一台服务器上面如何部署多个tomcat?其实linux和windows步骤都差不多,都是: 第一步:解压tomcat安装包后,复制一份并且重命名:多个tomcat就多复制一份 第二步:将复制的tomc ...
- FastDFS 分布式文件系统的安装与使用---两台服务器搭建FastDFS环境
写在前面 有不少小伙伴在实际工作中,对于如何存储文件(图片.视频.音频等)没有一个很好的解决思路.都明白不能将文件存储在单台服务器的磁盘上,也知道需要将文件进行副本备份.如果自己手动写文件的副本机制, ...
- Nginx 怎么给一台服务器,配置两个域名?详细的解说+截图教程
一. 环境.条件准备 一台云服务器(我的是腾讯的centos7) 至少两个域名.(我的是simuhunluo.xyz和simuhunluo.top.这两个域名之间没有任何关系,我是在阿里 ...
- 借助svn进行半自动多台服务器上线部署
传统简单保留 如果web服务器就那么几台,大致可以在测试服务器上测试好以后,直接在正式的web服务器 压缩拷贝一个,然后再覆盖下,进行简单暴力的发布. 这种纯手工发布往往会带来几个问题 压缩一不小心把 ...
- 同一台服务器上部署多个Tomcat的配置修改方法
同一服务器部署多个tomcat时,存在端口号冲突的问题,所以需要修改tomcat配置文件server.xml,以tomcat7为例. 首先了解下tomcat的几个主要端口: <Server po ...
随机推荐
- 【2020-02-11】1346. Check If N and Its Double Exist
更多LeetCode解题详解 Easy Given an array arr of integers, check if there exists two integers N and M such ...
- ubuntu16.04+Opencv3.4.0安装(slam版)
本文记录ubuntu下安装opencv过程,步骤来自 opencv官网可以对照官网步骤:https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_inst ...
- HDU_2571_DP
http://acm.hdu.edu.cn/showproblem.php?pid=2571 简单dp,从上到下,从左到右依次更新每一格的最大幸运值. #include<iostream> ...
- DOCKER 学习笔记9 Kubernetes (K8s) 生产级容器编排 上
前言 在上一节的学习中.我们已经可以通过最基本的 Docker Swarm 创建集群,然后在集群里面加入我们需要运行的任务 以及任务的数量 这样我们就创建了一个服务. 当然,这样的方式在我们本地虚拟机 ...
- python机器学习——正则化
我们在训练的时候经常会遇到这两种情况: 1.模型在训练集上误差很大. 2.模型在训练集上误差很小,表现不错,但是在测试集上的误差很大 我们先来分析一下这两个问题: 对于第一个问题,明显就是没有训练好, ...
- [redis读书笔记] 第一部分 数据结构与对象 字典
三 字典 字典是Hash对象的底层实现,比如用HSET创建一个HASH的对象,底层可能就是用一个字典实现的键值对. 字典的实现主要设计下面三个结构: /* * 哈希表节点 */ typedef str ...
- ASP.NET Core MVC 中实现中英文切换
哈喽..大家好 很久没有更新了,今天就来一篇最近开发用到的功能,那就是中英文切换,这个实际上也不是高大上,先说一下原理,在.NET Core框架中给我们提供了全球化的类,叫做Localization, ...
- javascript console对象 常用的方法
console对象 var o = {name:'3'} console.assert(o.name === '3', "name 的值应该为:string 3"); consol ...
- [译]课程 3: 更多关于 Jobs 和 JobsDetails
译者注: 目录在这 [译]Quartz.NET 3.x 教程 译者注: 原文在这 Lesson 3: More About Jobs & JobDetails 正如你在 课程 2 中看到的, ...
- openssl 自签名证书SHA1加密算法
openssl genrsa -out privkey.pem 2048 openssl req -new -key privkey.pem -sha1 -out cert.csr openssl r ...
