Redis篇1-概述与centos7安装使用
概述
What
- 全称:远程字典服务器
- C语言编写,开源的高性能的k-v键值分布式内存数据库
- 目前最流行的NoSql数据库之一
Why use
分担传统关系型数据的压力,提供高性能的数据服务。
Feature
- 除了简单的K-V,支持更多的数据类型(list、set、hash、zset)
- 部分支持事务(Multi、Exec、Discard、Watch、Unwatch)
- 支持数据的持久化(RDB、AOF)和备份(主从复制、哨兵模式)等特性
下载安装
- 官方下载压缩包:http://download.redis.io/releases/redis-5.0.5.tar.gz
- 解压缩
tar -zxvf redis-5.0.5.tar.gz
- 进入解压目录,
make
安装 - 出错,gcc找不到
- gcc是linux上C程序的编译工具
- yum安装gcc
yum install gcc-c++
- 继续
make
- 出错,
jemalloc/jemalloc.h: No such file or directory
#include <jemalloc/jemalloc.h>
- 原因:第一次make失败中断的影响
- 清理一下make目录
make distclean
- 继续
make
make
完毕,继续make install
,安装完毕(此时 /usr/local/bin下会出现redis的命令工具)
运行测试
- 拷贝默认配置文件,以备测试
mkdir -p /tmp/myredis cp redis.conf /tmp/myredis/
- 启动redis服务
- 进入redis安装后的命令目录
/usr/local/bin
- 启动redis服务
redis-server /tmp/myredis/redis.conf
- 可以看到pid和默认的port=6379
- 进入redis安装后的命令目录
- redis客户端连接6379端口服务
- 新开会话连接
redis-cli -p 6379
- 连接成功,输入 ping,响应 PONG,OK!
- 输入SHUTDOWN,可以停止redis服务(或者干掉redis服务进程)
- 新开会话连接
- 简单修改配置,以守护进程方式启动redis服务
vi /tmp/myredis/redis.conf
- 找到GENERAl配置块第一项daemon
- 修改 daemonize yes
- 保存退出,再次运行redis-server
- 查看进程
ps -ef|grep reids
- 继续客户端连接验证
- 简单存取键值对
set k1 v1 set k2 v2 dbsize keys * get k1 get k2
相关知识概念
- Redis是单线程的C/S模型,对epoll(linux内核I/O多路复用技术)进行包装,来快速响应客户端请求。
- Redis默认有16个数据库
- 见默认配置项
databases 16
,可以修改数目 - 客户端操作时,使用
select n
来切换数据库,n从0开始
- 见默认配置项
- 常用客户端操作命令1
set key value
定义/覆盖一个字符串键值get key
获取键的字符串select n
切换数据库,n为目标数据库下标数字(从0开始)dbsize
当前库的键个数keys *
当前库的键列表flushdb
清空当前数据库,慎用flushall
清空所有数据库,慎用
- ...