zoukankan      html  css  js  c++  java
  • Redis物理文件结构

     

    Redis物理文件结构 

    对于数据库,个人习惯先从物理结构文件入手,整体上看一下有哪些文件,都是什么作用。
    类似于MySQL,数据文件和配置文件是Redis最基本也是做主要的两个物理文件之一,相比MySQL或者其他数据库,Redis的相关的物理文件相当的简单。
    与MySQL眼花缭乱的各种数据文件,日志文件等等不同,默认情况除了配置文件redis.conf(当然配置文件可以随意指定位置),只有一个数据文件dump.rdb
    甚至连日志文件都没有,如下的日志文件是自己通过配置指定的,整个文件结构非常干净清爽。

    Redis的数据文件

    Redis实例默认有16个数据库,Redis中的数据库是一个逻辑上的概念,其数据库物理文件不像其他的数据,每个数据库分别对应一组物理文件(数据文件,日志问题等等),
    Redis所有的数据库对应着同一个物理文件,也即数据库文件,默认名称为dump.rdb。
    Redis默认数据库的个数为16,但是对应同一个物理文件dump.rdb

    Redis下切换数据库
    ./bin/redis-cli -h 127.0.0.1 登陆之后默认是数据库0
    select n可以切换数据库

    Redis的数据文件并不是与数据实时同步的,在默认的配置下以及说明如下
    # save 900 1      900秒内至少有1个key被改变
    # save 300 10      300秒内至少有300个key被改变
    # save 60 10000     60秒内至少有10000个key被改变

    Redis的“数据库”仅仅是一个逻辑上的概念,更多关于Redis中数据库的概念,请参考:http://blog.kankanan.com/article/52ff7528-redis-7684591a5e93.html

    Redis配置文件

    类似于MySQL的配置信息my.cnf,Redis也有类似的配置文件和配置信息,比如端口号,是数据文件路径等等
    对于配置选项的查询,类似于MySQL中的global_variables或者show variables命令一样(select * from performance_schema.global_variables;show variables like '%innodb_autoinc_lock_mode%';)
    redis可以通过config get configkey 来获取某一个配置项的配置信息,config get 查询不存在的配置项的时候返回空。

    config get * 获取所有的配置选项,config get 出来的结果格式并非类似于关系数据库中的key:value的格式,
    而是key一行,value一行,因此config get出来的结果必然是偶数行

    配置文件参数的修改

    1,类似于MySQL修改配置文件,直接修改配置文件后重启Redis服务
    2,使用config set 修改参数

    使用config set设置参数存在的问题:

    1,config set 并不能修改所有的参数,有些参数是不支持config set 修改的
    比如loglevel是可以通过config set 修改的,而databases参数就不可以通过config set修改,对于不支持的config set的选项,会提示:ERR Unsupported CONFIG parameter:

    2,config set修改后的参数,并不能持久化,也就是说redis服务重启之后,config set 修改的参数依旧会按照配置文件中的来

    因此,在Redis中,对于配置信息的修改,建议之一修改配置文件,而不是通过config set 来修改。

     

     

    相关参考:
    勿用Redis多库:http://blog.kankanan.com/article/52ff7528-redis-7684591a5e93.html
    redis配置文件详解:https://www.cnblogs.com/AlanLee/p/7053577.html

  • 相关阅读:
    html/css 滚动到元素位置,显示加载动画
    React 监听页面滚动,界面动态显示
    Html/css 列表项 区分列表首尾
    Html/css 水平布局居中
    Html 设置标题栏顶部固定
    TypeScript 引用资源文件后提示找不到的异常处理
    Github自动打包并推送Nuget版本
    获取电脑的网络连接状态(六)适配器状态 及 几种方案耗时对比
    获取电脑的网络连接状态(五)WebClient
    获取电脑的网络连接状态(四)IPHost
  • 原文地址:https://www.cnblogs.com/wy123/p/9644971.html
Copyright © 2011-2022 走看看