zoukankan      html  css  js  c++  java
  • Linux-08 redis安装配置

    引言

    1.yum  源码 rpm  
    yum 快速,间接,高效,解决依赖关系,(自动安装到某个路径,不可控),通过yum安装的软件查询命令
    	rpm -ql nginx 
    	yum源的软件包可能版本非常低
    	
    源码安装,可扩展第三方的功能(可以指定目录安装, configure --prefix=/opt/python36/)
    	可以通过官网的最新代码,进行编译安装
    

    1.通过源码安装,在线下载redis源码包

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

    2.解压缩redis源码包,如果源码包带有.gz结尾,需要通过gzip指令扩展,也就是-z的参数

    tar -zxvf redis-4.0.10.tar.gz  #解压缩这个文件,且显示解压缩过程
    

    3.切换目录到redis源码包

    cd redis-4.0.10
    

    4.由于redis没有configure脚本,直接就有了makefile,因此可以直接编译且安装

    make #编译
    make install #安装
    #此两条命令可以缩写为一条,  make && make install 
    

    5.编译安装完成后,redis默认会将redis命令添加到环境变量中/usr/local/bin底下

    which redis-server看下
    

    6.启动redis服务端,自定义一个redis.conf ,不用原本自带的redis.conf

    mv redis.conf redis.conf.bak # 原本自带的redis.cof改个名字
    grep -v  '^#' redis.conf.bak  | grep -v '^$' 过滤掉所有的注释行和空白行
    grep -v  '^#' redis.conf.bak  | grep -v '^$' > redis.conf 过滤掉所有的注释行和空白行重定向写入到新的文件中
    使用VIM命令 dG(重头删到尾) 
    
    vim redis.conf ,写入以下内容(!!不要加上注释!!!)
    	bind 0.0.0.0 #把127.0.0.1改为0.0.0.0,windows的pycharm就可以连接上
    	port 6379
    	daemonize no  #后台运行redis
    	pidfile /data/6379/redis.pid #将redis进程的id写入到redis.pid这个文件
    	loglevel notice  #日志级别
    	logfile "/data/6379/redis.log"
    	dir /data/6379  #配置redis数据存放点
    	protected-mode yes  #redis3.0之后的安全模式
    	requirepass qiangdademima  #给redis添加密码
    	redis的安全模式,可能会阻挡你远程连接,为了解决这个安全模式,给redis设置一个密码
    
    以下命令用于查看与测试:
    mkdir -p /data/6379  #创建这个目录
    redis-server redis.conf 启动redis
    ps -ef|grep redis  查看redis进程
    $netstat -tunlp|grep 6379 查看6379这个端口
    redis-cli
    ping
    auth qiangdademima 或者redis-cli -a qiangdademima
    
    history 查看你输入的历史命令 ,可以配合!+(命令)或者!+(历史命令Id) 例如!ps 或!288
    pkill nginx 杀死nginx所有相关进程
    

    7.redis的多实例功能,可以在一个机器上,启动多个redis服务端  

    cp redis.conf redis-6380.conf
    
    	1.准备一个新的配置文件,redis默认支持多实例,再准备一个新的配置文件redis-6380.conf,内容如下:
    		port 6380
    		bind 0.0.0.0 
    		daemonize yes
    		pidfile /data/6380/redis.pid 
    		loglevel notice 
    		logfile "/data/6380/redis.log"
    		dir /data/6380
    		protected-mode yes
    		requirepass zeiqiangdademima
    	2.启动第二个redis实例(第二个数据库)
    	mkdir -p /data/6380
    	redis-server  redis-6380.conf 
    	3.新建的服务窗口
    	redis-cli -p 6380
    	ping
    	auth qiangdademima	
    

    8.通过命令查询redis的密码参数

    CONFIG get requirepass
    



    redis持久化之rdb与aof(重要)

    rdb模式

    1.在配置文件中写入参数,支持rdb模式
    vim redis.conf 
    
    port 6379
    bind 0.0.0.0
    daemonize yes
    pidfile /data/6379/redis.pid 
    loglevel notice 
    logfile "/data/6379/redis.log"
    dir /data/6379 
    protected-mode yes
    requirepass qiangdademima
    dbfilename  dbmp.rdb
    save  900 1
    save 300 10
    save 60  10000
    
    2.启动redis服务端,此时可以设置redis的key,通过save命令触发rdb持久化
    redis-cli
    set name cj
    set age 27
    save
    

    aof模式

    1.vim redis.conf #写入以下 
    
    daemonize yes
    port 6379
    logfile /data/6379/redis.log
    dir /data/6379
    dbfilename  dbmp.rdb
    requirepass redhat
    save 900 1
    save 300 10
    save 60  10000
    appendonly yes
    appendfsync everysec
    
    2.启动redis-server服务端,默认就会生成appendonly.aof持久化文件
    此时进入redis-cli的操作,都会被记录,且追加到appendonly.aof文件中,以达到持久化的操作
    cd /data/6379
    tail -f  appendonly.aof #实时监控看下
    

    redis 持久化方式有哪些?有什么区别?

    rdb:基于快照的持久化,速度更快,一般用作备份,主从复制也是依赖于rdb持久化功能
    
    aof:以追加的方式记录redis操作日志的文件。可以最大程度的保证redis数据安全,类似于mysql的binlog
    

      

    幻想毫无价值,计划渺如尘埃,目标不可能达到。这一切的一切毫无意义——除非我们付诸行动。
  • 相关阅读:
    Express中间件简介
    Express中间件概念
    浏览器cookie插件
    node=day7
    cookie可视化操作工具---EditThisCookie
    node之cookie和session对比
    node通过session保存登录状态
    浅谈表单同步提交和异步提交
    node.js服务端存储用户密码md5加密
    jQuery的ajax里dataType预期服务器返回数据类型
  • 原文地址:https://www.cnblogs.com/TodayWind/p/13715766.html
Copyright © 2011-2022 走看看