有时候搭建在搭建多个同样的网站的时候发现Redis共用引发数据冲突,那么我们可以通过Redis多开去解决这个问题
基于多端口实现redis多实例:
1、打开面板安装redis,并配置好使用的**内存,例如这里的测试服务器是4G内存,这里选择了512M内存供redis使用,配置好后重启redis(如果是生产环境,请自己斟酌是否可以重启以及限制**内存)。
![图片[1]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqbLNyAYowMyy7QEwgAg4rQM.png)
2、将按照好的redis拷贝一份,
命令如下:
![图片[2]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqbLNyAYo5uOwrgcwgAg4hAQ.png)
3、放行6378端口(可以根据自己实际使用端口情况进行分配)
![图片[3]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqbLNyAYo6eqmzAQwgAg4oQE.png)
4、打开文件管理器,进入到 /www/server/redis6378目录下面
打开redis.conf,修改配置文件中的端口为6378
![图片[4]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqbLNyAYowLXCugQwgAg40wM.png)
5、修改redis的pid、log、数据存放目录
![图片[5]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqbLNyAYonoKzuQMwgAg4lAQ.png)
![图片[6]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqbLNyAYovrj6xwEwgAg41wM.png)
修改后保存
![图片[7]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgq7LNyAYo_NH3oAMwgAg4lwU.png)
6、删除之前的redis生成的log 和pid文件(看清路径)
![图片[8]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgq7LNyAYo-oPfWTCACDi_Aw.png)
7、启动并验证启动命令:
![图片[9]-Redis多开基于端口实现redis多实例教程-互悦科技源码-软件定制开发](http://28429999.s21i.faimallusr.com/4/ABUIABAEGAAgqrLNyAYo_u-4xgMwgAg4_AE.png)
这样我们新建的一个Redis就成功启动啦!
最后补充一下补充,如果复制过来的redis内有缓存数据,还是会导致后面站点数据错乱。
所以需要新开启redis对应端口下清理缓存。
1、先确保进程存活 ps -ef|grep redis
2、执行./redis-cli或者./redis-cli -h 127.0.0.1 -p 6388或6389(端口号以自行设置的为准)进入新开启的redis实例
3、执行dbsize命令
127.0.0.1:6388> dbsize
4、清理 127.0.0.1:6388> flushall
5、退出 127.0.0.1:6388> exit
6、多实例重复2-5(注意端口号)