zoukankan      html  css  js  c++  java
  • Redis

    1、安装:

    1、下载

    wget http://download.redis.io/releases/redis-3.2.8.tar.gz

    2、解压

    tar -zxvf redis-3.2.8.tar.gz

    3、复制,放到、/usr/local目录下

    sudo mv ./redis-3.2.8 /usr/local/redis/

    4、进入目录

    cd /usr/local/redis/ 

    5、编译安装

    sudo make && make install 

    6、安装完成,进入/usr/local/bin目录中查看

    cd /usr/local/bin
    ls -all
    [root@localhost bin]# ls -all
    总用量 15064
    drwxr-xr-x. 2 root root 4096 12月 10 22:01 .
    drwxr-xr-x. 15 root root 4096 12月 10 22:00 ..
    -rwxr-xr-x. 1 root root 2431616 12月 10 22:01 redis-benchmark
    -rwxr-xr-x. 1 root root 25205 12月 10 22:01 redis-check-aof
    -rwxr-xr-x. 1 root root 5181486 12月 10 22:01 redis-check-rdb
    -rwxr-xr-x. 1 root root 2584459 12月 10 22:01 redis-cli
    lrwxrwxrwx. 1 root root 12 12月 10 22:01 redis-sentinel -> redis-server
    -rwxr-xr-x. 1 root root 5181486 12月 10 22:01 redis-server
    redis-server redis服务器
    redis-cli redis命令行客户端
    redis-benchmark redis性能测试工具
    redis-check-aof AOF文件修复工具
    redis-check-rdb RDB文件检索工具

    7、配置文件移到/etc/目录下

    sudo cp /usr/local/redis/redis.conf /etc/redis/

    8、配置

    Redis的配置信息在/etc/redis/redis.conf下。

    核心配置文件:

    #绑定ip:如果需要远程访问,可将此⾏注释,或绑定⼀个真实ip
    bind 127.0.0.1
    #端口,默认6379
    port 6379
    #是否以守护进程运⾏
    #如果以守护进程运⾏,则不会在命令⾏阻塞,类似于服务
    #如果以⾮守护进程运⾏,则当前终端被阻塞
    #设置为yes表示守护进程,设置为no表示⾮守护进程
    #推荐设置为yes
    daemonize yes
    #数据库文件
    dbfilename dump.rdb
    数据⽂件存储路径
    dir /var/lib/redis
    #⽇志⽂件
    logfile /var/log/redis/redis-server.log
    #数据库,默认有16个
    database 16 #从0开始
    #主从复制,类似于双机备份。
    slaveof
    为redis配置密码
    requirepass 123456

    2、服务端和客户端命令

    服务器端:

    服务器端的命令为redis-server

     可以使⽤help查看帮助⽂档 redis-server --help 

    推荐使⽤服务的⽅式管理redis服务
    启动
    sudo service redis start
    停止
    sudo service redis stop
    重启 
    sudo service redis restart
    ps -ef|grep redis 查看redis服务器进程
    sudo kill -9 pid 杀死redis服务器
    sudo redis-server /etc/redis/redis.conf 指定加载的配置文件

    客户端:

    可以使用help查看帮助文档
    redis-cli --help
    连接redis
    redis-cli
    远程连接
    redis-cli -h 192.168.31.38 -p 6379
    #输入密码
    auth 123456
    切换数据库
    数据库没有名称,默认有16个,通过0-15来标识,连接redis默认选择第一个数据库
    select n

    3 、数据库操作

    1、设置键值

    String类型:

    set key value

    2、设置键值及过期时间

    设置键为aa值为aa过期时间为3秒的数据
    setex aa 3 aa 

    3、设置多个键值

    mset a1 python a2 java a3 c

    4、追加值

    apend a1 haha

     

    5、获取键值

    获取单个键值
    get key
    获取多个键值
    mget key1 key2 

     

    6、删除

    del key1 key2

    键命令

    查找键

    keys [pattern]
    #参数支持正则表达式

    判断键值是否存在,存在返回1,不存在返回2

    exists [key]

    查看键值的类型

    type [key]

    删除键:

    del key1 key2 ..

     

    设置键的过期时间

    expire key seconds

     设置键a1有效期3秒

     

    查看有效时间

    ttl key

     

    hash类型:

    • hash⽤于存储对象,对象的结构为属性、值
    • 值的类型为string

    设置单个属性

    hset key field value

     

    MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.

    Redis被配置为保存数据库快照,但它目前不能持久化到硬盘。用来修改集合数据的命令不能用

    原因:

    强制关闭Redis快照导致不能持久化。 解决方案:

    运行config set stop-writes-on-bgsave-error no 命令后,关闭配置项stop-writes-on-bgsave-error解决该问题。

    设置多个属性

    hmset key field1 value1 field2 value2 .

     

    获取值:

     获取所有的属性:

    hkeys key

    获取⼀个属性的值

    hget key field

     

    获取多个属性的值:

    hmget key field1 field2 ...

     

    获取所有属性的值

    hvals key

    删除:

      删除整个hash键及值,使用del命令

      删除属性,属性对应的值会被一起被删除

    hdel key field1 field2 ...

    list类型:

    • 列表的元素类型为string
    • 按照插⼊顺序排序
    lpush key value1 value2 ...

     

  • 相关阅读:
    oracle多表关联删除的两种方法
    T100——汇总错误消息显示
    T100——程序从标准签出客制后注意r.c和r.l
    本地DataGrip连接阿里云MySQL
    mysql for mac 上的安装及用DataGrip连接
    mac 上安装vue模版-D2 Admin
    Python 3.7版本关于json.dump失效
    设置第三方的SMTP服务
    Apache 配置代理服务
    PyCharm 通过Github和Git上管理代码
  • 原文地址:https://www.cnblogs.com/pengsq/p/10099907.html
Copyright © 2011-2022 走看看