REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
Redis有三个主要特点,使它优越于其它键值数据存储系统
- Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化。
- 与其它键值数据存储相比,Redis有一组相对丰富的数据类型。
- Redis可以将数据复制到任意数量的从机中。
下载
从 官网下载redis,并解压 redis-3.2.9.tar.gz
到 /usr/local
如果官网无法访问 可以从 这里 下载
测试
- 解压
tar zxvf redis-3.2.9.tar.gz
- 移动到
mv redis-3.2.9 /usr/local/
- 编译测试
cd /usr/local/redis-3.2.9
- 执行
sudo make test
提示All tests passed without errors!
安装
编译安装 sudo make install
提示
1 | firstdeMac-mini:redis-3.2.9 syc$ sudo make install |
启动、关闭
启动Redis
1 | firstdeMac-mini:~ syc$ pwd |
检查启动
new Window
输入
1 | Last login: Thu Jul 13 16:59:09 on ttys007 |
关闭
1 | firstdeMac-mini:~ syc$ redis-cli |
强行关闭
强行终止redis进程可能会导致数据丢失,因为redis可能正在将内存数据同步到硬盘中。
1 | ps axu|grep redis ## 查找redis-server的PID |
配置
- 在
/usr/local/redis-3.2.9
目录下建立bin
etc
db
三个目录 - 把
/usr/local/redis-3.2.9/src
目录下的mkreleasehdr.sh
redis-benchmark
redis-check-dump
redis-cli
redis-server
拷贝到bin
目录 - 在
etc
下,参考原/usr/local/redis-3.2.9
目录下的redis.conf
,新建一个redis.conf
我设置了密码requirepass 123456
启动
进入 /usr/local/redis-3.2.9
目录,执行 redis-server etc/redis.conf
指定配置文件
1 | firstdeMac-mini:~ syc$ cd /usr/local/redis-3.2.9 |
检查是否启动
别忘记,我配置过密码的,所以出现认证问题
1 | firstdeMac-mini:~ syc$ pwd |
使用 auto
输入密码
1 | firstdeMac-mini:~ syc$ pwd |