CentOS下Redis安装配置小结
Redis是REmote DIctionary Server的缩写。 是一个使用 C 语言写成的,开源的 key-value 非关系型数据库。跟memcached类似,不过数据可以持久化。
Redis的所有数据都保存在内存中,然后不定期的通过异步方式保存到磁盘上(称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(称为“全持久化模式”)。
要想成功使用一种产品,我们需要先深入了解它的特性。
安装
下载源码:
$ tar xzf redis-2.8.8.tar.gz
$ cd redis-2.8.8
$ make
make命令执行完成后,会在src目录下生成5个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump,它们的作用分别如下:
- redis-server:Redis服务器的daemon启动程序
- redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
- redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
- redis-check-aof:更新日志检查
- redis-check-dump:用于本地数据库检查
安装
make PREFIX=/usr/local install
配置
redis的配置文件在你的安装目录里。名为:redis.conf
mkdir /etc/redis cp redis.conf /etc/redis/redis.conf
- redis默认不是用守护进程的,如果需要更改,可把daemonize no改成daemonize yes。
- 如果对redis 默认6379端口不爽的,可以更改port 6379
- 如果想把数据文件放到一个指定文件夹,更改dir /var/lib/redis/(需要自己先创建)(默认是dir ./ 也就是默认放到安装目录下。)
- 客户端闲置多少秒后,断开连接
timeout 300
- 下面的配置二选一
一:SNAPSHOTTING内存快照方式(Save the DB on disk) save * *:保存快照的频率,第一个*表示多长时间,第2个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
#当有一条Keys数据被改变时,900秒刷新到disk一次 save 900 1
#当有10条Keys数据被改变时,300秒刷新到disk一次
save 300 10
#当有1w条keys数据被改变时,60秒刷新到disk一次
save 60 10000
二:APPEND ONLY MODE (AOF方式)
appendfsync everysec 每秒同步。这里可以注释掉,打开它下面的选项appendfsync no
appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
是否在每次更新操作后进行日志记录,如果不开启,可能会在断电时导致一段时间内的数据丢失。因为redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认值为no
appendonly no 开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
Redis有两种存储方式,默认是snapshot方式,实现方法是定时将内存的快照(snapshot)持久化到硬盘,这种方法缺点是持久化之后如果出现crash则会丢失一段数据。因此在完美主义者的推动下作者增加了aof方式。aof即append only mode,在写入内存数据的同时将操作命令保存到日志文件。
其实aof目的主要是数据可靠性及高可用性,在Redis中有另外一种方法来达到此目的:Replication。由于Redis的高性能,复制基本没有延迟。这样达到了防止单点故障及实现了高可用。
运行
redis-server /etc/redis/redis.conf

即可启动redis服务,确认运行了之后,可以用redis-benchmark命令测试看看,还可以通过redis-cli命令实际操作一下,比如:
redis-cli set foo bar
OK
redis-cli get foo
“bar”
关闭
redis-cli shutdown
因为redis是异步写入磁盘的,如果要让内存中的数据马上写入硬盘可以执行如下命令:
redis-cli save
艺搜参考
http://www.cnblogs.com/hb_cattle/archive/2011/10/22/2220907.html
http://www.cnblogs.com/zhuhongbao/archive/2013/06/04/3117997.html
CentOS下Redis安装配置小结的更多相关文章
- centos下 redis安装配置及简单测试
1:安装redis(使用的的环境是centos6.7 redis-2.6.14) 将redis-2.6.14.tar.gz文件拷贝到/usr/local/src 目录下 解压文件 tar zxvf ...
- CentOS 下 redis 安装与配置
CentOS 下 redis 安装与配置 1.到官网上找到合适版本下载解压安装 [root@java src]# wget -c http://redis.googlecode.com/files ...
- CentOS下Redisserver安装配置
1.CentOS 6.6下Redis安装配置记录 2.CentOS下Redisserver安装配置
- centOS下yum安装配置samba
centOS下yum安装配置samba 2010-03-29 15:46:00 标签:samba yum centOS 安装 休闲 注意:本文的原则是只将文件共享应用于内网服务器,并让将要被共享的目 ...
- [转帖]CentOS下iRedMail安装配置
CentOS下iRedMail安装配置 中文名为艾瑞得邮件,由 rhms 项目更名而来.是针对 Linux 设计的邮件服务器解决方案,是在操作系统安装好后使用的一套 shell 脚本,用于快速部署一套 ...
- Windows下Redis安装配置和使用注意事项
Windows下Redis安装配置和使用注意事项 一:下载 下载地址: https://github.com/microsoftarchive/redis/releases 文件介绍: 本文以3.2. ...
- CentOS下Redis服务器安装配置
说明: 操作系统:CentOS 1.安装编译工具 yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-de ...
- Redis 对比 Memcached 并在 CentOS 下进行安装配置
了解一下 Redis Redis 是一个开源.支持网络.基于内存.键值对的 Key-Value 数据库,使用 ANSI C 编写,并提供多种语言的 API ,它几乎没有上手难度,只需要几分钟我们就能完 ...
- CentOS 6.6下Redis安装配置记录
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/120.html?1455855209 在先前的文章中介绍过redis,以下 ...
随机推荐
- CCF I'm Stuck!
问题描述 试题编号: 201312-5 试题名称: I'm stuck! 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个R行C列的地图,地图的每一个方格可能是'#', ...
- MVC 使用Jquery EasyUI分页成功
先上图吧
- tableView设置首尾
[self.tableView setTableHeaderView:view]; [self.tableView setTableFooterView:view];
- [Android Pro] 网络流量安全测试工具Nogotofail
reference to : http://www.freebuf.com/tools/50324.html 从严重的HeartBleed漏洞到苹果的gotofail 漏洞,再到最近的SSL v3 P ...
- Python--常见问题解决方案
1.如何支持中文,在第一行加上编码格式的支持: # coding=gbk +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...
- iOS 自定义返回按钮,保留系统滑动返回
原文链接 自定义返回按钮保留系统滑动返回手势.gif 1.简介 使用苹果手机,最喜欢的就是用它的滑动返回.作为一个开发者,我们在编写很多页面的时候,总是会因为这样那样的原因使得系统的滑动返回不可用.使 ...
- 有关Java的优秀博客集锦
1. 在java编程中,多线程并发总有些疑惑:如为什么会产生并发?并发会有什么影响?java中提供了哪些处理并发的技术(机制) 关于并发产生的原因,我查了一些资料目前发现有两种原因:一,存在共享的资源 ...
- iOS 十六进制和字符串转换
NSString *dictString = [dict JSONFragment];//组合成的. dictString==={"content":"Sadgfdfg& ...
- Android WebView 支持H5的定位Js
//启用数据库 webSettings.setDatabaseEnabled(true); String dir = this.getApplicationContext().getDir(" ...
- iOS开发中调试小技巧
对于软件开发而言,调试是必须学会的技能,重要性不言而喻.对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中.不同语言.不同IDE.不同平台的 ...