Redis 数据库配置

安装:
    >>> curl -O http://download.redis.io/releases/redis-3.2.8.tar.gz
    >>> tar -zxvf redis-3.2.8.tar.gz

    # 进入到解压的文件夹根目录
    >>> sudo make install

    # 进入到/usr/local/bin内查看:
    >>> cd /usr/local/bin
    >>> ls -a
    
    redis-server redis服务器
    redis-cli redis命令行客户端
    redis-benchmark redis性能测试工具
    redis-check-aof AOF文件修复工具
    redis-check-rdb RDB文件检索工具  

配置:
    # 手动创建目录:/etc/redis
    
    # 复制文件redis解压目录下的redis.conf到刚创建的/etc/conf目录下

    # 修改redis.conf:
        bind 127.0.0.1

        port 6379

        daemonize yes - 后台运行,是否有以守护进程运行
   
        dbfilename dump.rdb - 数据库文件

        dir /etc/redis - 数据文件保存的目录

        logfile /etc/redis/redis-server.log - 日志文件
        
        database 16 - 数据库个数

       requirepass “123465”  - 设置密码
        
# 启动服务端:

    # 在项目目录下建立[].conf文件,并写入需要修改的选项,如
        bind 127.0.0.1
        port 7001

    # 进入到项目目录,启动服务端:
        >>> sudo redis-server [].conf

    # 查看是否启动成功:
        >>> ps -ef|grep redis-server

    # 停止:
        >>> sudo pkill -9 redis-server


# 启动客户端:
    
    # 连接到redis服务器
        >>> redis-cli -h 主机 -p port —-raw
        # —-raw 选项用于查看值为中文的情况

    # 切换数据库:
        >>> select 2


搭建主从:
    1> 浏览器网站,网站向数据库保存数据,master主服务器写数据,slave自动备份数据。

    2> 作用:
        a. 备份数据:主服务器会同步数据到从服务器
        
        b. 实现读写分离:master负责写数据,slave负责读数据
      

    3> 步骤:
        a. 创建一个新目录:/Desktop/python/redis,拷贝redis.conf 到当前目录下
        sudo cp /redis解压目录/redis.conf /home/python/redis/master.conf
        b. 改名为master.conf,修改配置如下是:
        bind 192.168.210.150
        port 7000
        daemonize yes
        c. 启动主服务器:
        redis-server master.conf

        d. 拷贝新的redis.conf到相同目录,修改为slave.conf,并修改配置如下:
         bind 192.168.210.149
         port 7000
         daemonize yes
         slaveof 192.168.210.150 7000
        e. 启动从服务器:
         redis-server slave.conf
        f. 查看主:
 redis-cli -h 192.168.210.150 -p 7000 info Replication
        g. 查看从:
redis-cli -h 192.168.210.149 -p 7000 info Replication



搭建集群:实现负载均衡,至少需要三个主从服务器

1> 配置6个服务器的conf文件如下:
     bind 192.168.210.150
     port 7001
     pidfile 7001.pid
     cluster-enabled yes                     
     cluster-config-file 7001_node.conf    
     cluster-node-timeout 5000
     daemonize yes
     appendonly yes      
    # pidfile:运行后创建,记录pid

    # cluster-config-file:运行后记录配置,运行状态等

    # appendonly:开启持久化的一种模式,redis有两种:RDB和AOF

        RDB模式: Redis默认采用异步的方式将数据存放到磁盘上,这个模式对大部份应用来说是足够好的,但是在Redis进程或
                 电源发生故障的情况下,可能会造成小部份的数据丢失,这取决于配置的保存时间点。

        AOF模式: Appendonly是一种能够提供非常好的持久化的模式,例如使用默认的Fsync方案,Redis能在发生服务器电源
                 故障或操作系统仍然正常运行但Redis进程莫名挂掉的情况下,只丢失1秒的数据。

        AOF与RDB模式可以同时启用,这并不冲突。如果AOF是可用的,那Redis启动时将自动加载AOF,这个文件能够提供更好的持久性保障。

2> 启动6个服务器:redis-server [].conf

3> 创建集群:
    # 将redis解压包中src目录下的redis-trib.rb拷贝到/usr/local/bin目录:
      # 注意先进入 redis-trib.rb 所在的目录
      sudo cp redis-trib.rb /usr/local/bin/

    # 安装ruby环境:
    brew install ruby
    apt-get instal ruby  # linux

    # 安装ruby的redis依赖:
        i. 查询gem源地址,如果不是https://rubygems.org/,需要更换
         gem source -l

        ii. 更换gem源:
         gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
        iii. 安装redis包:
         sudo gem install redis

4> 使用redis-trib.rb创建集群:# —-replicas 1 表示一个主配一个从
    redis-trib.rb create --replicas 1 主机1:端口1 主机2:端口2 ... 
5> 通过集群连接服务器:
    redis-cli -c -h 192.168.210.149 -p 7001

# cry16算法:redis集群默认定义16384个slot,平均分配,通过集群保存键值对时,redis会通过算法,CRC16(KEY)%16384,根据结果找到服务器


python中使用集群:

# 安装包:
 pip install redis-py-cluster
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值