• linux redis


    redis下载:https://redis.io/download

    redis可视化工具:

    redis-desktop-manager  :https://redisdesktop.com/download

     Redis Client 

    先安装依赖包

    yum install gcc

    redis安装:

    $ wget http://download.redis.io/releases/redis-4.0.10.tar.gz
    $ tar xzf redis-4.0.10.tar.gz
    $ cd redis-4.0.10
    $ make PREFIX=/usr/local/redis/ install

    安装完成:

    启动redis

    // 启动redis
    /usr/local/redis/bin/redis-server   或者 ./redis-server
    
    // 打开一个新ssh窗口运行redis-cli
    /usr/local/redis/bin/redis-cli     或者 ./redis-cli
    
    // 全部代码如下
    [root@localhost redis-4.0.10]# /usr/local/redis/bin/redis-cli
    127.0.0.1:6379> set name 123456
    OK
    127.0.0.1:6379> get name
    "123456"
    127.0.0.1:6379> 

    将redis配置成服务service

    cd /down/redis-4.0.10
    // 先建立一个etc文件夹
    cp redis.conf /usr/local/redis/etc/redis.conf

    //编辑redis.conf 改daemonize no为daemonize yes
    vim /usr/local/redis/etc/redis.conf

    编辑redis,并且加入以下代码

    vim /etc/init.d/redis    // 如果redis文件不存在,可以创建一个(mkdir redis)

    #!/bin/sh
    #
    # redis        Startup script for Redis Server
    #
    # chkconfig: - 80 12
    # description: Redis is an open source, advanced key-value store.
    #
    # processname: redis-server
    # config: /etc/redis.conf
    # pidfile: /var/run/redis.pid
    source /etc/init.d/functions
    BIN="/usr/local/redis/bin"
    CONFIG="/usr/local/redis/etc/redis.conf"
    PIDFILE="/var/run/redis.pid"
    ### Read configuration
    [ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
    RETVAL=0
    prog="redis-server"
    desc="Redis Server"
    start() {
            if [ -e $PIDFILE ];then
                 echo "$desc already running...."
                 exit 1
            fi
            echo -n $"Starting $desc: "
            daemon $BIN/$prog $CONFIG
            RETVAL=$?
            echo
            [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
            return $RETVAL
    }
    stop() {
            echo -n $"Stop $desc: "
            killproc $prog
            RETVAL=$?
            echo
            [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE
            return $RETVAL
    }
    restart() {
            stop
            start
    }
    case "$1" in
      start)
            start
            ;;
      stop)
            stop
            ;;
      restart)
            restart
            ;;
      condrestart)
            [ -e /var/lock/subsys/$prog ] && restart
            RETVAL=$?
            ;;
      status)
            status $prog
            RETVAL=$?
            ;;
       *)
            echo $"Usage: $0 {start|stop|restart|condrestart|status}"
            RETVAL=1
    esac
    exit $RETVAL
    View Code

     

    chmod +x /etc/init.d/redis

    service redis start
    service redis stop

    chkconfig --add redis

     

    修改profile文件:

    # vi /etc/profile

    在最后行添加:

    export PATH="$PATH:/usr/local/redis/bin"

    配置下面的内核参数,否则Redis脚本在重启或停止redis时,将会报错,并且不能自动在停止服务前同步数据到磁盘上/etc/sysctl.conf加上 

    #vim /etc/sysctl.conf

    vm.overcommit_memory = 1 

    #sysctl -p 

     

    加入开机启动

    sudo chkconfig redis on 

     

    客户端启动redis-cli

    [root@localhost bin]# cd /
    [root@localhost /]# redis-cli
    127.0.0.1:6379> 

     修改了配置文件redis.conf,重新加载

    /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

    /usr/local/redis/bin目录下的几个关键文件

    redis-benchmark:redis性能测试工具

    redis-check-aof:检查aof日志的工具

    redis-check-dump:检查rdb日志的工具

    redis-cli:连接用的客户端 redis-server:redis服务进程

    conf 配置项介绍

    daemonize:如需要在后台运行,把该项的值改为yes
    
    pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址
    
    bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项
    
    port:监听端口,默认为6379
    
    timeout:设置客户端连接时的超时时间,单位为秒
    
    loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice
    
    logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上
    
    database:设置数据库的个数,默认使用的数据库是0
    
    save:设置redis进行数据库镜像的频率
    
    rdbcompression:在进行镜像备份时,是否进行压缩
    
    dbfilename:镜像备份文件的文件名
    
    dir:数据库镜像备份的文件放置的路径
    
    slaveof:设置该数据库为其他数据库的从数据库
    
    masterauth:当主数据库连接需要密码验证时,在这里设定
    
    requirepass:设置客户端连接后进行任何其他指定前需要使用的密码
    
    maxclients:限制同时连接的客户端数量
    
    maxmemory:设置redis能够使用的最大内存
    
    appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态
    
    appendfsync:设置appendonly.aof文件进行同步的频率
    
    vm_enabled:是否开启虚拟内存支持
    
    vm_swap_file:设置虚拟内存的交换文件的路径
    
    vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0
    
    vm_page_size:设置虚拟内存页的大小
    
    vm_pages:设置交换文件的总的page数量
    
    vm_max_thrrads:设置vm IO同时使用的线程数量

    参考:https://blog.csdn.net/qq_20989105/article/details/76390367

    https://blog.csdn.net/yjqyyjw/article/details/73293455

  • 相关阅读:
    设计模式——装饰器模式
    设计模式——适配器模式
    Java IO概述
    Java中的注解
    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(3)- Serial Downloader模式(sdphost/MfgTool)
    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(2)- Boot配置(BOOT Pin/eFUSE)
    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(1)- Boot简介
    痞子衡嵌入式:ARM Cortex-M内核那些事(5)- 一表搜罗指令集
    痞子衡嵌入式:SEGGER J-Link仿真器硬件版本变迁
    痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU特性那些事(4)- RT105x选型
  • 原文地址:https://www.cnblogs.com/wesky/p/9303641.html
Copyright © 2020-2023  润新知