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. select编程[回调+事件循环]

    感觉比java写起来还要忧伤..... """ select , poll,epoll 注意: epoll并不一定比select的性能好,这需要看场景 1. 在高并发场景 ...

  2. form表单细节

    一.表单 表单<form> 标签用于为用户输入创建 HTML 表单 表单能够包含 input 元素,比如文本字段.复选框.单选框.提交按钮等等. 表单还可以包含 menus.textare ...

  3. ArrayList遍历的三种方法

    在输出很多的ArrayList的元素时,用普通的for循环太麻烦,因此本文介绍三种遍历ArrayList的方法 package test; public class Student { private ...

  4. FP回写阶段卡住或报错

    FP在autosap阶段往往会因各种各样的因素导致回写报错,卡住等异常: 本次由于一个视图的性能突然下降导致回写长期卡住没有完成: 这时如果要重新执行回写的话就要检查哪部分的数据回写到SAP端,一般有 ...

  5. 【Python】学习笔记七:函数

    函数的目的:重复使用相同的一段程序 函数的定义 下面是我自定义的一个求a,b,c三个参数平方和的函数 #a,b,c三个参数的平方和 def pow_sum(a,b,c): x = pow(a,2)+p ...

  6. JDK中String类的源码分析(二)

    1.startsWith(String prefix, int toffset)方法 包括startsWith(*),endsWith(*)方法,都是调用上述一个方法 public boolean s ...

  7. [LeetCode]-algorithms-Longest Substring Without Repeating Characters

    Given a string, find the length of the longest substring without repeating characters. For example, ...

  8. 2018-2019-2 20165235《网络对抗技术》Exp8 Web基础

    2018-2019-2 20165235<网络对抗技术>Exp8 Web基础 实践过程记录: (1).Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与 ...

  9. ffmpeg精简编译

    项目上需要用到ffmpeg的接收功能,把rtp流转封装为ts吐udp组播流,不涉及编码,所以需要精简一下脚本如下: #!/bin/bash dir=$(pwd) echo $dir rm -rf $d ...

  10. Java8 新特性之集合操作Stream

    Java8 新特性之集合操作Stream Stream简介 Java 8引入了全新的Stream API.这里的Stream和I/O流不同,它更像具有Iterable的集合类,但行为和集合类又有所不同 ...