• Redis安装及简单使用


    一、Redis的安装配置

    1、下载redis安装包

    2、安装redis依赖

      yum -y install gcc*
      yum -y install make
      yum -y install tcl

    3、编译安装

      tar xvf  redis-2.8.12.tar.gz 
      mv redis-2.8.12 redis
      mv redis /usr/local
      cd /usr/local/redis
      make

    4、配置文件启动redis

      vi /usr/local/redis/redis.conf

      daemonize yes
      pidfile /usr/local/redis/redis.pid
      logfile /usr/local/redis/redis.log
      port 6379
      dir /usr/local/redis/redisData
      requirepass 123456

    5、将/usr/local/redis/src目录下的redis-benchmark、redis-server redis-cli、redis-check-dump、redis-check-aof 4个文件拷贝到/usr/local/bin/目录下,如下图:

    6、在/bin文件下写启动脚本

    给脚本加执行权限:chmod u+x startRedis.sh

     startRedis.sh执行脚本的时候,产生了一个问题:shell中能够打印出"redis started!",但是通过ps -ef|grep redis查看进程的时候,没有看到redis的进程

    这是为什么呢?

    ①到/usr/local/bin中通过"./redis-server"启动的时候,是能够正常启动redis的,也能够查看到进程,在目录下执行"./redis-cli"能够进入redis数据库指令的输入界面,输入info,能够打印相关信息。说明redis的安装没有问题;

    ②因为我的脚本是在window环境下写,再拷过来的,难道是编码问题吗,在/bin文件夹下将startRedis.sh文件删掉,在shell下用vi编辑启动脚本,保存,再次运行脚本,还是如上能够在shell中打印"redis started!",redis程序还是没有启动。排除脚本问题。

    ③到/usr/local/bin中通过"./redis-server  /usr/local/redis/redis.conf"启动脚本,查看进程的启动情况,redis程序还是没有启动。

    ④检查/usr/local/redis下的redis.pid,没有内容,联想到第一点,因为我的配置文件中是设置了密码的,在进入redis数据库的指令输入界面之后,输入info,不应该打印出数据库的相关信息,应该有权限问题,提示输入密码。推断是配置文件没有生效,可是问题出在哪里呢?

    ⑤查看/usr/local/redis下的配置文件,好像也没有错误,偶然注意到配置文件中,进行了日志的设置,vi /usr/local/redis/redis.log查看日志内容,如下图所示:

    问题似乎找到了,在/usr/local/redis/文件夹下mkdir redisData。" >redis.log"清空日志内容,再次运行startRedis.sh脚本,查看redis.log日志内容:

    redis启动成功。

    ⑥在/usr/local/bin下执行"./redis-cli",进入redis命令行,输入info:

    提示要进行密码的认证,另一种权限登录的方法:redis-cli -a  password

    ⑦redis的停止:./redis-cli shutdown

    ./redis-cli -a 123456 shutdown

    ⑧到此redis的安装和基本配置完成,剩下需要的话,可以加环境变量。

    补充问题:

    ①redis-cli后边可以跟参数,进行远程连接等操作,如下图:

    ②可以通过redis desktop manager等可视化工具进行远程连接

    ③可以通过天兔对其进行监控

    二、Redis的增删改查操作

    选择数据库:使用select关键字
    select 1,选择第一个数据库
    使用set关键字插入数据
    set name andashu
    使用get 关键字获取数据
    get name
    使用del 关键字 删除数据
    del name

    redis-server #启动的命令
    redis-cli #进入redis命令行
    select 1
    字符串类型:
    set k v
    set k1 v1 EX 60 #k的超时时间是60s
    get k
    del k
    哈希类型:
    hset k2 zdb 'xxxxx' #添加哈希类型的数据
    hget k2 zdb #获取哈希类型的单个字段的数据
    hgetall k2 #获取哈希类型里面的所有数据
    hdel k2 zdb #删除指定的某个值
    keys * #查看当前数据库有哪些key
    info #查看redis当前系统信息(监控)

     ---------------------------------------------

    我想你.. ...

     

    如欢如殇 授以青春鲜活肢体奔忙 如思如忘 驱以老朽深沉灵魂冥想 始自情热激荡 从未敢终于世事炎凉 无能执手相望 无法去尝试结发同床 无力至心死身僵 一息坚强 ------ 我一直没有放弃,如果你也能看到 修身 修禅
  • 相关阅读:
    ORA-01733: virtual column not allowed here
    五年磨一剑:Java 开源博客 Solo 1.0.0 发布了!
    五年磨一剑:Java 开源博客 Solo 1.0.0 发布了!
    关于Java中equal函数和==的一些区别
    <Android Framework 之路>Android5.1 Camera Framework(四)——框架总结
    Sqlite基本命令集合(linux/fedora/ubuntu)
    简介分布式计算系统的硬件架构
    <Android Framework 之路>Android5.1 Camera Framework(三)
    “调试器的协议与调试对象不兼容”错误的解决
    log4j:WARN Please initialize the log4j system properly.解决方案
  • 原文地址:https://www.cnblogs.com/lz2lhy/p/6859250.html
Copyright © 2020-2023  润新知