• Redis可视化工具 Redis Desktop Manager


    1、前言

      从接触Redis也有两年,平时就使用它来做缓存层,它给我的印象就是很强大,内置的数据结构很齐全,加上Redis5.0的到来,新增了很多特色功能。而Redis5.0最大的新特性就是多出了一个数据结构Stream,它是一个新的强大的支持多播的可持久化的消息队列,可以去了解学习一下哟。言归正传,之所以写下这篇文章是因为公司里面的电脑一直都有装Redis可视化工具,用起来很方便,感觉很有必要在家里自己的电脑装上一个,在安装使用的过程中也出现之前遇到的一些小问题,因此写下这篇博客记录一下。

    2、软件安装

    软件版本:

      1、CentOS 7

      2、Redis3.2

      3、redis-desktop-manager-0.8.8.384

    百度云(可视化工具):https://pan.baidu.com/s/1a2UV9mHikGkGFTF6BFoqdg 密码:ahfw

    官网:https://redisdesktop.com/download

      2.1、安装Redis

    CentOS 7直接yum安装

    yum install redis  // 此方式直接安装不是最新的版本呢
    安装最新的版本需要安装Remi的软件源:
    yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
    yum --enablerepo=remi install redis

    安装完毕后启动Redis测试一下是否安装成功:

    1、启动
    service redis start 或者 systemctl start redis
    2、检查是否启动
    ps -A|grep redis
    3、查看安装时创建的文件 
    rpm -ql redis
    4、查看redis版本
    redis-cli --version
    5、设置开机自启
    chkconfig redis on
    或者
    systemctl enable redis.service

    看到如下则表示启动成功

    连接Redis:

    redis-cli

      2.2、安装redis-desktop-manager

      Windows下直接安装即可

      可参考官网

    3、测试连接并抛出问题

      3.1、测试连接

      

    直接链接可能会出现下面问题:

      3.2、抛出问题

     1、Redis安装后默认只能在localhost访问,若在进行远程访问可能会被限制,不能连接

     2、在Linux主机里面,一般都打开防火墙,因此我们通过Reids的默认端口6379进行访问,可能被限制

     3、在上面例子中,我们直接使用redis-cli直接连接就可以访问了。那如果放开权限允许远程登录,没有验证机制将会导致安全问题

     4、假设开放远程连接权限,并设置了验证机制,那么Redis的主从复制又需要如何处理呢

    4、解决问题

      4.1、问题1

      我们可以通过修改Redis的配置文件即可解决

    a、注释掉bind 127.0.0.1允许所有的ip访问redis

    b、将修改为:protected-mode no (Redis3.2新增的)

    whereis redis    // 查找配置文件路径
    vi /etc/redis.conf   
    systemctl restart redis   // 修改好配置文件后保存并重启

    解决完这个问题后,即表明Redis软件本身允许远程连接了,但是我们还需要解决防火墙的问题才可以进行远程连接。

      4.2、问题2

      CentsOS7防火墙改成firewall,不再是之前的iptables,因此开放端口的方式有点区别。

    开放端口如下:
    firewall-cmd --zone=public --add-port=6379/tcp --permanent
    --zone           //作用域
    --add-port=6379/tcp  //添加端口,格式为:端口/通讯协议
    --permanent       //永久生效,没有此参数重启后失效
    重启防火墙:
    systemctl stop firewalld.service 
    systemctl start firewalld.service
    systemctl restart firewalld.service

     

      测试连接:

      连接成功

      4.2、问题3

       设置密码的验证机制有两种方式,包括配置文件修改(永久)和命令行修改(临时,重启服务后无效)

      a、配置文件修改

      将去掉#requirepass foobared前面的注释,并更改为自己的密码 requirepass 密码,最后重启Redis

       测试:

      从下面的命令行可以看到,不输入密码,则获取不到数据,即设置密码验证机制成功

      

      图形化工具同理:

      b、命令行修改

    config get requirepass        // 获取校验密码
    config set requirepass mypassword2      //设置密码

     

      4.4、问题4

      若master设置了密码则slave也要设置相应的密码参数否则无法进行正常复制的。
      slave中配置文件内找到如下行,移除注释,修改密码即可。

    #masterauth  mstpassword 

    (以上是自己的一些见解,若有不足或者错误的地方请各位指出)

     作者:那一叶随风   http://www.cnblogs.com/phpstudy2015-6/

     原文地址:  https://www.cnblogs.com/phpstudy2015-6/p/9536831.html

     声明:本博客文章为原创,只代表本人在工作学习中某一时间内总结的观点或结论。转载时请在文章页面明显位置给出原文链接

  • 相关阅读:
    大型门户网站架构设计的可伸缩性
    服务器性能的瓶颈分析
    boost中bind、thread、io_services测试
    C++ 宏定义中字符串连接操作
    完成端口与高性能服务器程序开发
    异步IO、APC、IO完成端口、线程池与高性能服务器
    在模板类中使用字符串作为无类型模板参数
    VS2010 设置全局Include Directories与Library Directories
    Yii的Model ( 模型)创建及使用
    mvc中循环遍历分配的代码
  • 原文地址:https://www.cnblogs.com/phpstudy2015-6/p/9536831.html
Copyright © 2020-2023  润新知