zoukankan      html  css  js  c++  java
  • redis基础之安装和配置(一)

    前言

    折腾一下redis在linux环境的安装。

    ubantu16.04环境下安装

    • 下载安装,依次执行命令;
    # 从官方网站下载安装包,注意,当前在哪个目录下执行命令,下载的包将在哪个目录下
    $ wget http://download.redis.io/releases/redis-4.0.6.tar.gz
    # 将下载包解压
    $ tar -zxvf redis-4.0.6.tar.gz
    # 进入解压后的文件夹
    $ cd redis-4.0.6
    # 对文件进行编译,得到可执行的文件,
    $ sudo make
    # 对编译的文件进行测试,时间较长,没有报错则没有问题,编译出的redis命令放在src目录下
    $ sudo make test
    # 一般将redis文件统一放在/usr/local目录下,因此将文件移动
    $ sudo mv ./redis-4.0.6/* /usr/local/redis/
    # 进入redis的目录,执行安装
    $ cd /usr/local/redis/
    $ sudo make install  
    # 生成配置文件
    $ cd utils
    $ ./install_server.sh
    
    • 运行上面的脚本后,会让用户设置一些配置文件
    Please select the redis port for this instance: [6379]   # 配置启动端口
    Selecting default: 6379
    Please select the redis config file name [/etc/redis/6379.conf] # 配置启动文件
    Selected default - /etc/redis/6379.conf
    Please select the redis log file name [/var/log/redis_6379.log] # 配置日志文件
    Selected default - /var/log/redis_6379.log   
    Please select the data directory for this instance [/var/lib/redis/6379] # 配置数据文件路径
    Selected default - /var/lib/redis/6379
    Please select the redis executable path [/usr/local/bin/redis-server] # 配置redis-server和redis-cli的安装路径
    

    注意:redis相关操作命令都存放在/usr/local/redis/src 目录下;

    测试redis

    • 启动redis服务端
    $ redis-server
    

    可看到当前的终端被阻塞,按ctrl+C可以关闭服务端,但是有时候会关闭失败,后台依旧会运行;

    • 关闭redis-server
    方法一:
    # 找到redis的进程ID
    $ ps ajx|grep redis  或 top | grep redis
    
    $ sudo kill -9 进程ID
    
    方法二:
    # 使用客户端命令
    $ redis-cli -h ip地址  -p 端口  shutdown
    # 该命令有时会报错,不成功使用方法一
    
    • 启动redis的客户端
    $ redis-cli
    

    必须是在服务端打开后,客户端才能登陆,否则显示连接被拒绝;成功后进入客户端:

    # 默认只有本机可以访问,端口为6379
    > 127.0.0.1:6379
    

    手动更改配置

    为了适应需要,如不能阻塞终端,让redis在后台运行;可以远程访问redis,修改端口以及持久化文件的存储路径等,需要修改配置;

    • 进入redis的配置文件redis.conf
    $ cd /usr/local/redis/
    $ sudo vi redis.conf
    

    更改

    • 允许远程访问:将 bind 127.0.0.1 这一行注释,解除绑定本机;

    • 修改端口:将 port 6379 这一行更改为 port ****(指定自己的端口)

    • 配置以守护进程运行:

    # 找到这一行,默认不是守护进程,会阻塞终端,改成yes,在后台运行,非阻塞
    daemonize no
    
    • 可设置持久化文件
    # 这一行表示可持久化文件存储在dump.rdb文件中,可自定义文件名;
    dbfilename dump.rdb
    
    • 修改持久化文件的存储路径
    # 这一行表示文件存储在运行的目录下,一般需要修改位置,推荐/var/lib/redis
    # 先在/var/lib的目录下创建redis文件
    dir ./   改为 dir /var/lib/redis/
    
    • 设置日志文件的路径
    # 找到loglevel notice这一行,在其下面:
    logfile ''    # 设置文件的路径,redis默认不记录日志;
    
    • 移动配置文件位置,方便使用配置文件运行
    # 直接使用  redis-server 命令运行,默认是阻塞终端并且端口是6379的
    # 将配置文件redis.conf放置在一个专门的位置
    $ sudo cp /usr/local/redis/redis.conf /etc/redis/
    # 使用位置文件的方式启动,配置文件的相关参数就会生效
    $ sudo redis-server /etc/redis/redis.conf
    # 同时登陆客户端的方式也会更改,如果修改了端口
    $ redis-cli -h host -p port
    
    • 设置密码
    # 如果有需要,可以为redis设置操作密码
    # 进入配置文件
    $ sudo vi /etc/redis/redis.conf
    # 使用末行模式,搜索requirepass
    $ / requirepass
    $ requirepass 123456  # 取消requirepass foobared 的注释,将foobared的位置换成自己的密码
    # 重新启动redis-server
    $ redis-cli -h host -p port
    # 执行
    $ auth password(密码)  # 没有这句不能进行读写操作
    

    说明:不知道密码的情况下也是可以登录redis-cli客户端的,但是不能进行读写操作

    多个redis实例说明

    一台服务器上可以同时运行多个redis的实例,只需要将它们设置成不同的端口就可以了;

    # 进入redis的配置文件目录
    cd /etc/redis/
    # 复制一份redis.conf
    sudo cp redis.conf redis1.conf
    # 修改配置文件,将运行端口更改
    sudo vi redis1.conf
    port 6390  # 找到修改端口的那一行
    # 启动redis
    sudo redis-server /etc/redis/redis1.conf
    
    # 这时服务器新开了一个redis的实例,与其他的完全隔离;
    # 多个redis的实例可以共用一份dump.rdb持久化文件,但是其内容是相互隔离的;
    

    注意重复执行启动redis的命令,不会成功开启,而是依旧运行第一次开启的那个进程pid。

    参考

  • 相关阅读:
    迭代器、生成器、装饰器(转)
    Python小数据池
    接阿里云oss有感
    VSCode快捷键
    前端跨域调请求 nginx反向代理
    Git生成密钥
    【westorm系列之二】配置格式化
    钉钉安卓端无法渲染数据
    express 写接口
    js正则匹配身份证号 有坑
  • 原文地址:https://www.cnblogs.com/cwp-bg/p/8094914.html
Copyright © 2011-2022 走看看