一、redis简介

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。
 
二、redis环境搭建
 
1、到官网上下载redis,我下载的版本是3.0.7
官网地址:http://redis.io/
2、将下载下来的tar.gz 压缩包拷贝到usr/local目录下
该目录需要root权限 sudo cp redis-3.0.7.tar.gz /usr/local
3、使用终端进入local文件夹中,解压该压缩文件
sudo tar -zxf redis-3.0.7.tar.gz
4、编译测试:sudo make test
5、redis安装: sudo make install
至此,安装已完成、不过还需将redis配置一下
 
==================================
配置
1、在usr/local目录中创建三个文件夹,包括bin,etc,db三个目录
sudo mkdir /usr/local/bin
sudo mkdir /usr/local/etc
sudo mkdir /usr/local/db
2、将redis-3.0.7目录中的mkreleasehdr.sh,redis-benchmark, redis-check-dump, redis-cli, redis-server拷贝到bin目录
sudo cp /usr/local/redis-3.0.7/src/mkreleasehdr.sh ./bin
............
............
3、进入redis/etc目录下创建redis.conf配置文件
sudo vim redis.conf 
4、在redis.conf中添加如下代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#修改为守护模式
 
daemonize yes
 
#设置进程锁文件
 
pidfile /usr/local/redis/redis.pid
 
#端口
 
port 6379
 
#客户端超时时间
 
timeout 300
 
#日志级别
 
loglevel debug
 
#日志文件位置
 
logfile /usr/local/redis/log-redis.log
 
#设置数据库的数量,默认数据库为0,可以使用SELECT <dbid>命令在连接上指定数据库id
 
databases 8
 
##指定在多长时间内,有多少次更新操作,就将数据同步到数据文件,可以多个条件配合
 
#save <seconds> <changes>
 
#Redis默认配置文件中提供了三个条件:
 
save 900 1
 
save 300 10
 
save 60 10000
 
#指定存储至本地数据库时是否压缩数据,默认为yes,Redis采用LZF压缩,如果为了节省CPU时间,
 
#可以关闭该#选项,但会导致数据库文件变的巨大
 
rdbcompression yes
 
#指定本地数据库文件名
 
dbfilename dump.rdb
 
#指定本地数据库路径
 
dir /usr/local/redis/db/
 
#指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能
 
#会在断电时导致一段时间内的数据丢失。因为 redis本身同步数据文件是按上面save条件来同步的,所以有
 
#的数据会在一段时间内只存在于内存中
 
appendonly no
 
#指定更新日志条件,共有3个可选值:
 
#no:表示等操作系统进行数据缓存同步到磁盘(快)
 
#always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
 
#everysec:表示每秒同步一次(折衷,默认值)
 
appendfsync everysec

将文件保存退出

进入etc目录下 启动redis

sudo ../bin/redis-server ./redis.conf

启动完成后,实时查看启动日志

tail -f /usr/local/redis/log-redis.log

至此,redis 搭建完成,默认端口是6379

若想停止redis  进入bin目录

命令:redis-cli shutdown

停止redis

三、停止redis

./redis-cli -p 7030 shutdown

为了以后运维更轻松,可以利用alias做几个别名,

vi ~/.bashrc

alias redis="cd /opt/app/redis/redis-2.8.17/src"
alias startRedis="/opt/app/redis/redis-2.8.17/src/redis-server /opt/app/redis/redis-2.8.17/conf/redis7030.conf"
alias stopRedis="/opt/app/redis/redis-2.8.17/src/redis-cli -p 7030 shutdown"

具体路径,大家根据实际情况调整,保存退出,重新连接到linux终端

redis 即可直接进入redis根目录

startRedis 即启动redis

stopRedis 即停止redis

四、配置redis仅做为缓存使用

如果不打算使用事务、管线等一堆复杂功能,仅仅把redis当成cache server使用,可以在配置文件中,找到maxmemory、maxmemory-policy这二项,参考下面修改

maxmemory 2048mb
maxmemory-policy allkeys-lru

即:最大允许使用2G内存,所有key全都按LRU(近期最少使用)算法淘汰,这种情况下,不用设置过期时间,只要内存使用达到上限,不怎么使用的key自然被干掉。

附:redis.conf的微优化配置(从百度百科上抄过来的)

 1 daemonize yes
2
3 pidfile /opt/app/redis/redis-2.8.17/var/redis.pid
4
5 port 7030
6
7 timeout 300
8
9 loglevel debug
10
11 logfile /opt/app/redis/redis-2.8.17/var/redis.log
12
13 databases 16
14
15 save 9001
16
17 save 30010
18
19 save 6010000
20
21 rdbcompression yes
22
23 dbfilename dump.rdb
24
25 dir /opt/app/redis/redis-2.8.17/var/
26
27 appendonly no
28
29 appendfsync always
30
31 # slaveof <masterip> <masterport>
32 # masterauth <master-password>
33
34 slave-serve-stale-data yes
35
36 slave-read-only yes
37
38 maxmemory 1gb
39
40 maxmemory-policy allkeys-lru

其中:

端口、38行-最大内存使用量、以及var目录路径,大家根据实际情况自行调整

mac下搭建redis环境的更多相关文章

  1. 初识redis——mac下搭建redis环境

    一.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有 ...

  2. mac下搭建lua环境

    mac下安装lua(可借助:rudix 地址:http://rudix.org) curl -s https://raw.githubusercontent.com/rudix-mac/rpm/201 ...

  3. 一步步学习Python-django开发-Mac下搭建Python-Django环境

    首先确定学习那一个版本,以之前对Python的接触,Python2.x 的版本仍然占据很大的市场.但作为初学者我还是决定学习新的版本,相信未来会逐渐转向3.x版本的. 其实搭建Python不是一件很难 ...

  4. Mac下搭建selenium环境

    1,安装selenium 打开terminal,使用以下命令安装selenium:   pip install -U selenium 2,下载chromedriver,并放在python的安装根目录 ...

  5. Mac下搭建atx2环境

    Git-atx2官网地址,默认已有python3环境 1.安装rethinkdb 安装db:mac上安装很简单,执行brew install rethinkdb 启动db:nohup rethinkd ...

  6. mac下搭建MySql环境基本步骤

    准备工作做完后,开始: 创建数据库 step1: 在mac中->系统偏好设置->最下边点MySQL 在弹出页面中 关闭mysql服务(点击stop mysql server) step2: ...

  7. mac下搭建MySql环境

    准备工作做完后,开始: 创建数据库 step1: 在mac中->系统偏好设置->最下边点MySQL 在弹出页面中 关闭mysql服务(点击stop mysql server) step2: ...

  8. mac下搭建react-native环境

    1.安装Homebrew 2.安装node(最好安装4.x以上版本这样就自带了一个npm) 3.安装npm(node的包管理工具) 一般高版本的npm在安装node的时候已经具有了 4.安装react ...

  9. mac下搭建cordova开发环境

    Apache Cordova 原名叫PhoneGap.是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台.PhoneGap最初由Nitobi开发,2011年 ...

随机推荐

  1. 跨域之Ajax

    提到Ajax,一般都会想到XMLHttpRequest对象,通过这个对象向服务器发送请求,可以实现页面无刷新而更新数据. 由于同源策略的限制,一般情况下,只能通过XMLHttpRequest对象向同源 ...

  2. Vmware虚拟机安装Ubuntu并设置root登陆

    主机操作系统是win7.在Ubuntu官网下好系统镜像.iso文件,安装好Vmware workstation软件 1 安装Ubuntu系统到Vmware虚拟机: 注意下面这步是无法直接设置账号为ro ...

  3. ASP.NET MVC——URL路由

    在MVC之前,ASP.NET假设请求的URL与服务器上的文件之间有关联,服务器接受请求,并输出相应的文件.而在引入MVC后,请求是由控制器的动作方法来处理的.为了处理URL,便引入了路由系统. 首先我 ...

  4. php分页原理

    <?php //包含连接MySQL的文件 include "conn.php"; //分页的相关变量 $pagesize = 5; //每页显示条数 //获取地址栏中传递的p ...

  5. spring框架之javaconfig

    简介:随着java5的推出,加上当年基于纯java annotation的依赖注入框架Guice的出现,spring推出并持续完善了基于java代码和annotation元信息的依赖关系绑定描述方法, ...

  6. linux添加启动器图标(Ubuntu为例)

     添加启动器图标,以eclipse为例,%表示命令提示符,shell命令:%nano /usr/share/applications/eclipse.desktop-----------[Deskto ...

  7. 每天一个设计模式-2 外观模式(Facade)

    每天一个设计模式-2  外观模式(Facade) 1.生活中的示例 客户想要购买一台电脑,一般有两种方法: 1.自己DIY,客户需要知道组成电脑的所有电子器件,并且需要熟悉那些配件,对客户要求较高. ...

  8. js实现toggleClass

  9. css_03之文本、浮动

    1.字体属性:①字体格式:font-family:取值:“microsoft yahei”/Arial……:②字体大小:font-size:取值:pt/px:③字体加粗:font-weight:取值: ...

  10. 【代码笔记】iOS-字符串的分割

    一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...