• 【那些年我们用过的Redis】Linux下Redis安装与使用


    一款由C编写的开源、基于内存、单线程、可持久化的NoSql数据库。

    环境与版本

    linux环境为腾讯云单核``CentOS7.2.1511
    redis版本为5.0.9Redis官方下载地址.

    为什么不安装redis6版本?

    CentOS7,原装的gcc版本为4.8.5。安装redis6需要升级gcc版本,目前最新的gcc版本为gcc10,辣条君尝试安装gcc9版本,发现编译2个多小时都没有结束。网上说,编译时可以使用make -j4,可以开启多进程编译,but辣条君的服务器是单核的,遂放弃升级gcc,乖乖的安装redis5。redis5诞生于2018年底,基本功能蛮强大了。

    安装

    可以使用wget命令下载redis安装包,或者从官网上下载安装包copy到你的环境中。

    # 下载
    cd /usr/local/
    wget http://download.redis.io/releases/redis-5.0.9.tar.gz 
    # 解压
    tar -zxvf redis-5.0.9.tar.gz 
    

    编译

    cd /redis-5.0.9
    make
    make install PREFIX=/usr/local/redis
    

    此时,查看/usr/local/redis/bin路径会发现redis可执行文件。将常用的可执行文件放到环境变量中。

    cd ..
    cd redis/bin/
    # 一般都具有超级权限,sudo可以去掉
    sudo cp redis-cli redis-server redis-sentinel /usr/local/bin
    

    此时,你的redis就可以启动使用了,为了便于管理文件,咱们把配置文件放到合适的位置,并修改下配置文件。

    cd /usr/local/redis-5.0.9/
    # 咱们使用的配置文件在 /usr/local/redis.conf
    cp redis.conf /usr/local/
    cd..
    # 使用vim 查看并修改redis.conf
    vim redis.conf
    

    修改配置文件

    咱们使用vim修改部分参数,其他默认就好。

    # 主机地址,默认是127.0.0.1,修改成0.0.0.0
    bind 0.0.0.0
    # 端口 默认就好
    port 6379
    # 是否开启为守护线程,默认是no,改成yes
    daemonize yes
    # 指定redis进程的PID文件存放位置 给文件重命名
    pidfile /var/run/redis_6379.pid
    # 日志存放位置 给文件重命名
    logfile /var/log/redis_6379.log
    # rdb模式持久化快照,默认就好
    dbfilename dump.rdb
    # 持久化文件存放位置 默认就好
    dir ./
    # redis连接密码
    requirepass 123456
    

    以上,可以根据注释很好的理解并修改部分配置文件。具体解释下几个参数:

    bind设置成0.0.0.0,是为了保证本服务器以外的客户端可以访问本redis服务。

    daemonize设置成yes,将redis服务变成守护进程。在该模式下,redis会在后台运行,并将进程pid号写入至redis.conf选项pidfile设置的文件中,此时redis将一直运行,除非手动kill该进程。daemonize选项设置成no时,当前界面将进入redis的命令行界面,exit强制退出或者关闭连接工具(putty,xshell等)都会导致redis进程退出。

    requirepass :如果你是云服务,这个密码一定要设置!否则,服务器很容易被某些人拿去当矿机,就是所有服务都给你停掉,只开起挖矿程序,那你真成了打工人了。别问辣条君怎么知道的。。

    启动与使用

    启动so easy,就一行。

    redis-server /usr/local/redis.conf
    # 查看一下是否启动
    ps -ef | grep redis
    # 发现进程说明OK了
    root     11890     1  0 Nov04 ?        00:02:39 redis-server 0.0.0.0:6379
    

    咱们的使用,分为3种情况:本服务器内使用、其他机器(你的个人电脑)可视化客户端使用、其他机器(你的个人电脑)cli客户端使用。

    1. 首先看本服务器内使用
    redis-cli -h 127.0.0.1 -p 6379 -a 123456
    # 然后终端前缀会变成
    127.0.0.1:6379>
    # 使用一下
    127.0.0.1:6379> set name pjjlt
    OK
    127.0.0.1:6379> get name
    "pjjlt"
    
    1. 其他机器(你的个人电脑)可视化客户端使用

    直接说吧,使用Redis Desktop Manager可以连接并维护数据。

    1. 其他机器(你的个人电脑)cli客户端使用

    在你个人电脑,打开cmd,利用redis-cli连接redis服务,发现gg。这时,需要在我们Linux服务器上打开防火墙,利用iptables

    iptables其实不是真正的防火墙,我们可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的"安全框架"中,这个"安全框架"才是真正的防火墙,这个框架的名字叫netfilter。

    安装并使用iptables

    # 关闭防火墙
    systemctl stop firewalld 
    # 安装
    yum install iptables-services
    # 启动
    systemctl enable iptables
    # 打开
    systemctl start iptables
    # 暴露端口配置
    iptables -I INPUT -p tcp -m tcp --dport 6379 -j ACCEPT
    # 保存配置
    service iptables save
    # 重启 iptables 服务
    service iptables restart
    # 查看下 iptable配置
    iptables -L -n -v
    # 发现 6379端口暴露出去了
    21169 1657K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:6379
    

    ok,至此,其他机器上的cli也可以访问我们的Redis服务了。

  • 相关阅读:
    Layui数据表格的使用
    单选按钮和下拉框默认选中
    平方探测法处理散列函数冲突
    ssh框架整合笔记---配置文件
    第二十九个知识点:什么是UF-CMA数字签名的定义?
    第二十八个知识点:什么是公钥密码学的IND-CCA安全定义?
    第二十七个知识点:什么是对称密码加密的AEAD安全定义?
    第二十六个知识点:描述NAF标量乘法算法
    第二十五个知识点:使用特殊的素数定义$GF(p)$和$GF(2^n)$的方法。
    第二十四个知识点:描述一个二进制m组的滑动窗口指数算法
  • 原文地址:https://www.cnblogs.com/pjjlt/p/14019086.html
Copyright © 2020-2023  润新知