reids的搭建

---恢复内容开始---

redis的安装 源码包安装 以reids3.0为例  
先安装编译的软件 gcc gcc-c++ make 
yum -y install gcc gcc-c++ make 
 
新建目录/picclife
 
 

 

进入到/picclife下载(下载redis3.0版本到指定的目录)
 
解压

 

建立个redis目录的软连接指向redis-3.0.7

 

 创建redis目录的软连接好处:1,便利redis未来版本的升级2,执行编译安装是将有关文件放到/usr/local/bin/下,这样就可以在任何的目录下执行redis的命令
 
进入redis的目录

 

编译安装

 

 
查看redis的版本

 

在/usr/local/bin/下多了几个redis开头的可执行文件,
redis-server                        启动reids
redis-cli                              redis命令行客户端
redis-benchmark                redis基准测试工具
redis-check-aof                  redis  AOF持久化文件检测和修复工具
redis-check-dump              redis RDB 持久化文件检测和修复工具
redis-sentinel                      启动redis sentinel
启动redis的三种方法:  redis的默认端口好是6379
1,默认配置
redis-server
2.运行启动 
  (redis-server加上要修改配置名和值(可以是多对),没有设置就将使用默认配置)
 
redis-server   --configKey1  configValue1   --configKey2  configValue2 
 如用端口好启动(默认是6379   你可以使用6380)
redis-server   --port   6380 
 
3.配置文件启动(将配置文件写到制定的文件里  里 /opt/redis/redis.conf)
先将redis.conf  制定到目录

 

 

 
修改redis.conf (将daemonize no   修改为yes   查看端口)
添加密码requirepass
 

 

启动redis
redis-server  /opt/redis/redis.conf(工作中一般用这种方法启动redis)
 
 
 
主从复制:在另一台也安装redis
修改配置文件redis.conf

 

指定主服务器的IP和端口

 

   就可以了复制了
 
redis的基本配置
prt                                  端口
logfile                             日志文件
dir                                   redis工作目录(存放持久化文件和日志文件)(例:在配置文件里加dir /picclife/redisDum)
daemonize                      是否以守护进程的方式启动redis
pidfile                             定义pid文件的路劲
进入redis的数据库
例  :

 

 
关闭redis
redis-cli  shutdown
 
持久化的详解  在redis.conf 配置
rdb方式
rdb是redis对数据进行持久化而保存到硬盘的数据文件。
默认情况下相关配置如下:
save 900 1
save 300 10
save 60 10000其意义为:
• 当1个key更新值时每900秒保存一次数据到硬盘
 
• 当10个key更新值时每300秒保存一次到硬盘
 
• 当10000个key更新值时每60秒保存一次到硬盘
 
换句话说,当你重启服务器时数据是可能会丢失的,如果数据量小的时候,你会丢失5分钟以内的数据;如果数据量大的时候,你会丢失一分钟以内的数据。
所以set name 1后重启服务器,get name时的结果会是nil,如果你想避免这种情况发生,那么可以sav后重启服务器。
然而大多数情况下我们需要防止的是服务器突发情况下的重启,这时候可能没有机会save,所以还是会造成数据的丢失。所以你可以设置save "",这样的话会每次写操作到保存到硬盘,但是redis作为缓存却需要每次到保存到硬盘已丧失了其作为缓存的意义。因此这种方法是不可取的。
还有一种方式,在每次写操作时使用bgsave命令,可以直接返回操作结果并异步将其保存到硬盘。
rdb方式的优点是保存的数据存储量小(只有数据),重启速度很快;缺点是可能会造成数据的丢失。
 
aof方式
aof本质是redis操作(写操作)日志文件。aof默认是未开启的,需要在配置文件中进行设置,在配置文件中将这一行改为appendonly yes就可以了。
那么会在什么时候append到文件末尾呢?有三种方式:
appendfsync always
appendfsync everysec
appendfsync no • appendfsync always每次有新命令追加到 AOF 文件时就执行一次 fsync :非常慢,也非常安全
 
• appendfsync everysec每秒 fsync 一次:足够快(和使用 RDB 持久化差不多),并且在故障时只会丢失 1 秒钟的数据。
 
• appendfsync no从不 fsync :将数据交给操作系统来处理。更快,也更不安全的选择。
 
推荐(并且也是默认)的措施为每秒 fsync 一次, 这种 fsync 策略可以兼顾速度和安全性。
aof能够保证数据的安全,但是在重启时比较耗时,而且aof文件的体积比rdb文件大。
 
使用
在同时开启rdb和aof模式时,会采用aof模式来读取数据。在正常的使用中,如果不是十分在乎短时间内的数据丢失的时候,使用rdb方式会使服务器的效率更高,更节省cpu和硬盘;如果担心数据丢失的话,aof方式无疑会是更好的选择
 
redis的慢查询在配置文件redis.conf
 慢查询命令的时间 单位为微妙 一般设为10000

 

  可以记录都少慢查询 一般设为1000条
 
查询慢查询的命令是   slowlog  get
 
开启redis   AOF功能 在配置文件里 将appendonly   设为yes 
 
 
info  replication  可以查看主从复制的状态
 
在主的redis的配置文件里requirepass  配置密码   可在从的配置文件里masterauth  配置和主一样的密码
 
建议同步数据量大时 将配置文件的repl-timeout   时间调大  
当主节点数据量和写命令并发量大时  可以调整  client-output-buffer-limit slave 256mb 64mb 60  这里的参数 这是默认值
 
对于读取  从服务器读数据要求实时  时可将从服务器配置文件里的slave-serve-stale-data yes  改为no  防止读到过期或是错误的数据
 
实时保证从节点的数量和延迟性的功能可以通过
  # min-slaves-to-write 3
# min-slaves-max-lag 10
来定义配置参数

---恢复内容结束---

redis的安装 源码包安装 以reids3.0为例  
先安装编译的软件 gcc gcc-c++ make 
yum -y install gcc gcc-c++ make 
 
新建目录/picclife
 
 

 

进入到/picclife下载(下载redis3.0版本到指定的目录)
 
解压

 

建立个redis目录的软连接指向redis-3.0.7

 

 创建redis目录的软连接好处:1,便利redis未来版本的升级2,执行编译安装是将有关文件放到/usr/local/bin/下,这样就可以在任何的目录下执行redis的命令
 
进入redis的目录

 

编译安装

 

 
查看redis的版本

 

在/usr/local/bin/下多了几个redis开头的可执行文件,
redis-server                        启动reids
redis-cli                              redis命令行客户端
redis-benchmark                redis基准测试工具
redis-check-aof                  redis  AOF持久化文件检测和修复工具
redis-check-dump              redis RDB 持久化文件检测和修复工具
redis-sentinel                      启动redis sentinel
启动redis的三种方法:  redis的默认端口好是6379
1,默认配置
redis-server
2.运行启动 
  (redis-server加上要修改配置名和值(可以是多对),没有设置就将使用默认配置)
 
redis-server   --configKey1  configValue1   --configKey2  configValue2 
 如用端口好启动(默认是6379   你可以使用6380)
redis-server   --port   6380 
 
3.配置文件启动(将配置文件写到制定的文件里  里 /opt/redis/redis.conf)
先将redis.conf  制定到目录

 

 

 
修改redis.conf (将daemonize no   修改为yes   查看端口)

 

启动redis
redis-server  /opt/redis/redis.conf(工作中一般用这种方法启动redis)
 
 
 
主从复制:在另一台也安装redis
修改配置文件redis.conf

 

指定主服务器的IP和端口

 

   就可以了复制了
 
redis的基本配置
prt                                  端口
logfile                             日志文件
dir                                   redis工作目录(存放持久化文件和日志文件)(例:在配置文件里加dir /picclife/redisDum)
daemonize                      是否以守护进程的方式启动redis
pidfile                             定义pid文件的路劲
进入redis的数据库
例  :

 

 
关闭redis
redis-cli  shutdown
 
持久化的详解  在redis.conf 配置
rdb方式
rdb是redis对数据进行持久化而保存到硬盘的数据文件。
默认情况下相关配置如下:
save 900 1
save 300 10
save 60 10000其意义为:
• 当1个key更新值时每900秒保存一次数据到硬盘
 
• 当10个key更新值时每300秒保存一次到硬盘
 
• 当10000个key更新值时每60秒保存一次到硬盘
 
换句话说,当你重启服务器时数据是可能会丢失的,如果数据量小的时候,你会丢失5分钟以内的数据;如果数据量大的时候,你会丢失一分钟以内的数据。
所以set name 1后重启服务器,get name时的结果会是nil,如果你想避免这种情况发生,那么可以sav后重启服务器。
然而大多数情况下我们需要防止的是服务器突发情况下的重启,这时候可能没有机会save,所以还是会造成数据的丢失。所以你可以设置save "",这样的话会每次写操作到保存到硬盘,但是redis作为缓存却需要每次到保存到硬盘已丧失了其作为缓存的意义。因此这种方法是不可取的。
还有一种方式,在每次写操作时使用bgsave命令,可以直接返回操作结果并异步将其保存到硬盘。
rdb方式的优点是保存的数据存储量小(只有数据),重启速度很快;缺点是可能会造成数据的丢失。
 
aof方式
aof本质是redis操作(写操作)日志文件。aof默认是未开启的,需要在配置文件中进行设置,在配置文件中将这一行改为appendonly yes就可以了。
那么会在什么时候append到文件末尾呢?有三种方式:
appendfsync always
appendfsync everysec
appendfsync no • appendfsync always每次有新命令追加到 AOF 文件时就执行一次 fsync :非常慢,也非常安全
 
• appendfsync everysec每秒 fsync 一次:足够快(和使用 RDB 持久化差不多),并且在故障时只会丢失 1 秒钟的数据。
 
• appendfsync no从不 fsync :将数据交给操作系统来处理。更快,也更不安全的选择。
 
推荐(并且也是默认)的措施为每秒 fsync 一次, 这种 fsync 策略可以兼顾速度和安全性。
aof能够保证数据的安全,但是在重启时比较耗时,而且aof文件的体积比rdb文件大。
 
使用
在同时开启rdb和aof模式时,会采用aof模式来读取数据。在正常的使用中,如果不是十分在乎短时间内的数据丢失的时候,使用rdb方式会使服务器的效率更高,更节省cpu和硬盘;如果担心数据丢失的话,aof方式无疑会是更好的选择
 
redis的慢查询在配置文件redis.conf
 慢查询命令的时间 单位为微妙 一般设为10000

 

  可以记录都少慢查询 一般设为1000条
 
查询慢查询的命令是   slowlog  get
 
开启redis   AOF功能 在配置文件里 将appendonly   设为yes 
 
 
info  replication  可以查看主从复制的状态
 
在主的redis的配置文件里requirepass  配置密码   可在从的配置文件里masterauth  配置和主一样的密码
 
建议同步数据量大时 将配置文件的repl-timeout   时间调大  
当主节点数据量和写命令并发量大时  可以调整  client-output-buffer-limit slave 256mb 64mb 60  这里的参数 这是默认值
 
对于读取  从服务器读数据要求实时  时可将从服务器配置文件里的slave-serve-stale-data yes  改为no  防止读到过期或是错误的数据
 
实时保证从节点的数量和延迟性的功能可以通过
  # min-slaves-to-write 3
# min-slaves-max-lag 10
来定义配置参数
posted @ 2018-02-25 13:12  春天的风情  阅读(158)  评论(0编辑  收藏  举报