redis 简介

redis 是高性能的 key-value 数据库,读的速度是110000次/s,写的速度是81000次/s ,它以内存作为主存储

具有以下优点:

1. 支持数据的持久化,将内存中的数据存入磁盘,重启时自动加载

2. 丰富的数据结构,其value可以是多种数据类型,如 list set string hash zset    【zset 有序集合】

3. 支持数据备份,master-slave模式

安装与配置

安装详情参考 https://www.runoob.com/redis/redis-install.html

配置详情参考 https://www.runoob.com/redis/redis-conf.html

启动命令

cd  /src
./redis-server
./redis-server ../redis.config

第一种启动是按redis默认配置启动【注意redis安装时自带了配置文件,但是这种启动方式并不是以这个配置文件的配置启动】

第二种启动是以某配置文件启动【推荐方式】

也可以这么启动

./redis-server --key1 value1 --key2 value2

启动后可直接关闭终端,服务不会停止。

常规配置

1. 初始配置只能在本机上访问,默认配置 bind 127.0.0.1,需要修改为  bind 0.0.0.0,接收来自任意IP的请求

异常处理

1. 程序连接 redis 时,报错,显示 redis 处于受保护模式

解决方法 

a. 配置文件中修改配置 protected-mode no;重启redis,可查询该配置,在客户端运行命令 config get protected-mode

b. 直接在客户端命令行修改【需要验证是一次性还是永久性修改】

redis 连接

远程连接时要注意查看防火墙是否关闭

1. 通过客户端访问数据库

客户端下载    http://www.pc6.com/softview/SoftView_450180.html

2. 通过 redis 命令访问数据库

cd /src
./redis-cli

启动 redis 客户端,客户端 redis-cl i在 redis 的安装包内

也可以用命令远程连接redis

基础命令

每种数据类型都有各自的命令

string

实例

list

可以有效的存储多个字符串

实例

hash

可以有效地存储多个键值对

实例

set

可以存储多个唯一的字符串

zset

实例

上面的命令都是每次存储一个数据,redis也可以批量导入数据,一般是在set前加个m,如 hmset ,具体请百度

数据存储

redis 为了方便查看,通常会以 目录结构 存储数据,用文件夹来表示层级关系;

这时候在set的时候,需要将key值使用“:”的符号来区分层级关系,比如:set(“a:b”, “123”),那么在redis中就是a目录下的key值为b的value为123。

python-redis

import redis

r = redis.StrictRedis(host='192.168.10.130', port=6379)  # 连接Redis,
r.set('s', 'hello world') # 字符串
print r.get('s') ### hello world r.rpush('queue', 1, 2, 3) # 列表
print r.lpop('queue') ### 1
print r.llen('queue') ### 2
print r.lrange('queue', 0, -1) ### ['2', '3']

参考资料:

https://www.runoob.com/redis/redis-tutorial.html

redis 教程(一)-基础知识的更多相关文章

  1. php基础教程-必备基础知识

    PHP 脚本在服务器上执行. 您应当具备的基础知识 在继续学习之前,您需要对下面的知识有基本的了解: HTML CSS JavaScript 如果您希望首先学习这些项目,请在我们的 首页 访问这些教程 ...

  2. Redis简介及基础知识

    一.Redis简介 Redis是什么?两句话可以做下概括: 1. 是一个完全开源免费的key-value内存数据库 2. 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 string( ...

  3. redis学习研究--基础知识

    以下内容多为摘抄转载: 1. Redis 是什么 Redis是一个开源的使用ANSI C语言编写的基于内存的key/value存储系统,与memcache类似,但它支持的value类型更多,包括:字符 ...

  4. 一、redis系列之基础知识与centos下环境搭建

    1. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用. Redis不仅仅支持简单的ke ...

  5. Redis学习之一--基础知识

    一.定义 REmote DIctionary Server(Redis) 是一个以字典结构存储数据的key-value存储系统:使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化 ...

  6. Java基础教程——网络基础知识

    参考阅读[中国互联网发展史]:https://zhuanlan.zhihu.com/p/61602252 协议 计算机网络中的通信必须有一些约定,这些约定称为"通信协议". 通信协 ...

  7. php教程|php基础知识

    第1章  初识PHP 当前网络技术发展日新月异,各种基于服务端创建动态网站的脚本语言更是层出不穷.其中PHP以其简单.易用.可移植性强等特点,在众多的动态网站语言技术中独树一帜.那么到底什么是PHP, ...

  8. 菜鸟教程jsonp基础知识讲解

    jsonp是什么? Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据. 为什么我们从不同的 ...

  9. Redis基础知识补充及持久化、备份介绍(二)--技术流ken

    Redis知识补充 在上一篇博客<Redis基础认识及常用命令使用(一)--技术流ken>中已经介绍了redis的一些基础知识,以及常用命令的使用,本篇博客将补充一些基础知识以及redis ...

随机推荐

  1. 大数乘法(A * B Problem Plus)问题

    大数乘法问题一般可以通过将大数转换为数组来解决. 解题思路 第1步 第2步 第3步 第4步 样例输入1 56 744 样例输出1 800 样例输入2 -10 678 样例输出2 -6780 样例输入3 ...

  2. OI实用网址

    LaTeX公式编辑器 https://www.codecogs.com/latex/eqneditor.php http://latex.91maths.com/ 图.坐标系绘制 https://cs ...

  3. Nginx做反向代理时访问端口被自动去除

    使用的Nginx版本 : nginx/1.13.10 出现问题的配置文件如下 upstream http-web { server 0.0.0.0:9000; } server { listen 80 ...

  4. ASP.NET大文件断点上传

    HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...

  5. java语言课堂动手动脑

    1 运行 TestInherits.java 示例,观察输出,注意总结父类与子类之间构造方法的调用关系修改Parent构造方法的代码,显式调用GrandParent的另一个构造函数,注意这句调用代码是 ...

  6. Android 5种Toast特效

    Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失.   1.默认效果: Toast.ma ...

  7. 3D Computer Grapihcs Using OpenGL - 17 添加相机(旋转)

    在11节我们说过,MVP矩阵中目前只应用了两个矩阵,World to View 矩阵被省略了,这就导致我们的画面没有办法转换视角. 本节我们将添加这一环节,让相机可以旋转. 为了实现这一目的,我们添加 ...

  8. springMVC的常用注解有哪些?

    1.@Controller @Controller 用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象.分发处理器将会扫描使用了该注解的类的方法,并检测该方法是否 ...

  9. linux上的常用的系统自带命令

    wikipedia 发现的分类,发现还有好多没用过.. Unix command-line interface programs and shell builtins   File system ca ...

  10. iOS OC中桥接swift第三方库

    swift中有一些比较好的框架,比如绘图框架charts,最近项目中刚好用到,通过Pod的方式直接导入,xcode会自动生成charts-swift.h的文件,然后在需要导入的地方import < ...