01-String(键命令)
Redis
Redis是一个高性能的Key-Value数据库。
学习目标
- 能够描述出什么是 nosql
- 能够说出 Redis 的特点
- 能够根据参考资料修改常用Redis配置
- 能够写出Redis中string类型数据的增删改查操作命令
- 能够写出Redis中hash类型数据的增删改查相关命令
- 能够说出Redis中 list 保存的数据类型
- 能够使用StrictRedis对象对string类型数据进行增删改查
- 能够参考课件步骤搭建 Redis 集群
1、Redis安装
1、下载:(linux)
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
2、解压:
tar xzf redis-4.0.9.tar.gz
3、移动,放到user/local目录下
sudo mv ./redis-4.0.9 /usr/local/redis/
4、进入Redis目录
cd /usr/local/redis/
5、生成
sudo make
6、测试
sudo make test
7、安装,将redis的命令安装到/user/local/bin/目录
sudo make install
8、查看安装是否成功
cd /usr/local/bin
ls -all
- redis-server redis服务器
- redis-cli redis命令行客户端
- redis-benchmark redis性能测试工具
- redis-check-aof AOF文件修复工具
- redis-check-rdb RDB文件检索工具
9、配置文件,移动到/etc/目录下
配置文件目录为/user/local/redis/redis.conf
sudo cp /usr/local/redis/redis.conf /etc/redis/
配置
Redis的配置信息在/etc/redis/redis.conf下。
查看:
sudo vi /etc/redis/redis.conf
核心配置选项
绑定ip:如果需要远程访问,可将此行注释,或者绑定一个真实的ip
bind 127.0.0.1
端口:默认端口6379
port 6379
是否以守护进程运⾏
- 如果以守护进程运⾏,则不会在命令⾏阻塞,类似于服务
- 如果以⾮守护进程运⾏,则当前终端被阻塞
- 设置为yes表示守护进程,设置为no表示⾮守护进程
- 推荐设置为yes
daemonize yes
数据文件
dbfilename dump.rdb
数据文件存储路径
dir /var/lib/redis
日志文件
logfile "/var/log/redis/redis-server.log"
数据库,默认有16个
database 16
主从复制,类似于双机备份。
slaveof
服务端(了解客户端与服务端的命令)
服务端的命令为redis-server
可以使用help查看帮助文档
redis-server --help
个人习惯:
ps aux | grep redis 查看redis服务器进程
sudo kill -9 pid 杀死redis服务器
sudo redis-server /etc/redis/redis.conf 指定加载的配置文件
客户端
客户端的命令为redis-cli
帮助文档:
redis-cli --help
链接redis
redis-cli
运行测试命令
ping
切换数据库
数据库没有名称,默认有16个,通过0-15来标识,连接redis默认选择第一个数据库
select 10
数据结构:
1、能够写出Redis中string类型数据的增删改查操作命令
2、能够写出Redis中hash类型数据的增删改查命令
Redis是key-value的数据结构,每条数据都是一个键值对
键的类型是字符串(不能重复)
值的类型分为五种:
字符串(string),哈希(hash)、列表(list)、集合(set)、有序集合(zset)
数据操作行为:
保存,修改,获取,删除。
String类型
字符串类型是 Redis 中最为基础的数据存储类型,它在 Redis 中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。
保存
如果设置的键不存在则为添加,如果设置的键已经存在则修改
1、设置键值
set key value
#设置键为name,值为itcast的数据
#set name itcast
2、设置键值及过期时间,以秒为单位
setex key seconds value #设置键为aa值为cc过期时间为3秒的数据
#setex aa 3 cc
3、设置多个键值
mset key1 value1 key2 value2
#设置键为“a1”值为“python”,键为a2,值为java,键为a3,值为c
#mset a1 python a2 java a3 c
4、追加值
append key value
#向键为a1中追加值“abc”
#append a1 haha
获取
1、根据键获取值,如果不存在此键则返回nil
get key
#获取键name的值
get name
2、根据多个键获取多个值
mget key1 key2
#获取a1,a2,a3的值
mget a1 a2 a3
删除(删除键时会将值删除)
键命令:
1、查找键,参数支持正则表达式
keys pattern
#查看所有键
keys *
#查看名称中包含a的键
keys a*
2、判断键是否存在,如果存在返回1,不存在返回0
exists key1
#判断键a1是否存在
exists a1
3、查看键对应的value的类型
type key
#查看键a1的值类型,为redis支持的五种类型中的一种
type a1
4、删除键及对应的值
del key1 key2
#删除键a2,a3
del a2 a3
5、设置过期时间,以秒为单位,如果没有指定过期时间则一直存在,直到使用DEL移除
expire key seconds
#设置键a1的过期时间为20秒
expire a1 3
6、查看有效时间
ttl key
#查看键a1的有效时间
ttl a1
01-String(键命令)的更多相关文章
- redis学习笔记-01 string类型命令
一.set key value set joker 123456 #设定key为joker,value为123456的数据 二.keys * keys * #用于查看该数据库中所有的key值 三.se ...
- Redis启动服务和String常用命令
Redis启动服务和String常用命令 1. 启动Redis服务 E:\redis>redis-server.exe redis.windows.conf _._ _.-``__ ''-._ ...
- Redis 的键命令、HyperLogLog 命令、脚本命令、连接命令、服务器命令
Redis 的键命令.HyperLogLog 命令.脚本命令.连接命令.服务器命令 Redis 的键命令 Redis 的键命令主要用于管理 Redis 的键,如删除键.查询键.修改键及设置某个键等. ...
- redis键命令
1.ping命令用于检测redis是否启动 成功返回pong表示链接成功 2.在远程redis服务上执行命令 Redis-cli -h host -p port -a password 如果是连接本机 ...
- Linux基础01 学会使用命令帮助
Linux基础01 学会使用命令帮助 概述 在linux终端,面对命令不知道怎么用,或不记得命令的拼写及参数时,我们需要求助于系统的帮助文档:linux系统内置的帮助文档很详细,通常能解决我们的问题, ...
- kubectl get 后按2次tab键命令补全的失效原因分析
kubectl get 后按2次tab键命令补全的失效原因分析 2019/10/28 Chenxin a.bash客户端工具 在centos用户下, cd ~;echo "source &l ...
- vi简单快键命令
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- Linux使用退格键时出现^H + Tab键命令补全失效/方向键失效 + ls文件夹和文件没有颜色
删除问题 安装kalilinux使用普通用户的的时候按退格键无法实现删除功能 解决的办法有两个 一改变快捷键: 使用Ctrl+Backspace组合键可以实现删除功能 ctrl + backspace ...
- Redis 键命令
1.设置key值 set name zhangsan 删除key del name 2. 判断key是否存在 exists a,返回1 说明存在: 0 表示不存在 3. 剩余过期时间 ttl 返回- ...
随机推荐
- 使用Apollo动态修改线上数据源
前言 最近需要实现一个功能,动态刷新线上数据源环境,下面来使用Apollo配置中心和Spring提供的AbstractRoutingDataSource来实现. 具体实现 Apollo是携程开源的统一 ...
- [Go] 轻量服务器框架全局配置的实现以及解析json
在一个应用中经常需要有一个配置文件,可以对代码中的参数进行配置,可以使用一个json文件来对应一个struct的对象,进行全局配置 建一个conf/zinx.json作为配置文件 { "Na ...
- Opencv中图像height width X 轴 Y轴 rows cols之间的对应关系
这里做一个备忘录:
- 28.分类算法---KNN
1.工作原理: 存在一个样本数据集合,也称为训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一数据与所属分类对应的关系.输入没有标签的数据后,将新数据中的每个特征与样本集中数据对应的特 ...
- Eureka工作原理及它和ZooKeeper的区别
1.Eureka 简介: Eureka 是 Netflix 出品的用于实现服务注册和发现的工具. Spring Cloud 集成了 Eureka,并提供了开箱即用的支持.其中, Eureka 又可细分 ...
- git commit vim报错
window平台,使用git bash,填写git commit时,退出时vim报错: 错误信息 启动失败 Vim: Caught deadly signal SEGV 在工程目录下,进.git目录, ...
- C#中获取指定目录下所有目录的名称、全路径和创建日期
场景 指定一个路径,根据这个父级路径获取此目录下所有目录的名称.全路径.创建日期等信息. 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众 ...
- CSS3动画的使用
0921自我总结 CSS3动画的使用 一.动画的创建 @keyframes规则是创建动画 浏览器兼容 1.@keyframes myfirst 2.@-webkit-keyframes myfirst ...
- Pycharm自带Git实现版本管理
之前一直使用本地的git客户端,通过命令来上传.下载代码到Gitlab:每次都需要启动git客户端,敲git命令来完成,不够灵活,因为强大的Pycharm就自带git功能,可以直接在Pycharm完成 ...
- MySQL逻辑控制语句的使用
一.IF语句 1). IF(expr1,expr2,expr3) 如果expr1为true则结果为expr2否则为expr3 -->相当于三元运算符 ...