当前位置:网站首页>【Redis】redis安装与客户端redis-cli的使用(批量操作)
【Redis】redis安装与客户端redis-cli的使用(批量操作)
2022-08-08 13:06:00 【InfoQ】
Part1、在Centos中安装Redis
安装步骤
mkdir /data/redis & cd /data/redis wget https://download.redis.io/releases/redis-6.0.9.tar.gz
tar xzf redis-6.0.9.tar.gz
cd redis-6.0.9
make
make test
redis-serverredis-clicp src/redis-server /usr/local/bin/
cp src/redis-cli /usr/local/bin/
cp src/redis-sentinel /usr/local/bin/
cd /data/redis/
创建一个6379的文件夹
mkdir 6379
将配置模板拷贝到6379中
cp redis-6.0.9/redis.conf 6379
cd 6379
mkdir log
mkdir run
vim /data/redis/6379/redis.conf
daemonize yes ## 后台运行
pidfile /data/redis/run/redis_6379.pid
logfile /data/redis/log/redis_6379.log
dir /data/redis/6379
/usr/local/bin/redis-server /data/redis/6379/redis.conf

/usr/local/bin/redis-cli
安装可能出现的问题
make[3]: 进入目录“/data/redis/redis-6.0.9/deps/hiredis”
cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers -g -ggdb net.c
make[3]: cc:命令未找到
make[3]: *** [net.o] 错误 127
make[3]: 离开目录“/data/redis/redis-6.0.9/deps/hiredis”
make[2]: *** [hiredis] 错误
yum install gcc-c++make distcleanmakeserver.c: 在函数‘redisSetProcTitle’中:
server.c:5052:15: 错误:‘struct redisServer’没有名为‘cluster_enabled’的成员
if (server.cluster_enabled) server_mode = " [cluster]";
^
server.c:5053:20: 错误:‘struct redisServer’没有名为‘sentinel_mode’的成员
else if (server.sentinel_mode) server_mode = " [sentinel]";
^
server.c:5057:15: 错误:‘struct redisServer’没有名为‘bindaddr_count’的成员
server.bindaddr_count ? server.bindaddr[0] : "*",
^
server.c:5057:39: 错误:‘struct redisServer’没有名为‘bindaddr’的成员
server.bindaddr_count ? server.bindaddr[0] : "*",
^
server.c:5058:15: 错误:‘struct redisServer’没有名为‘port’的成员
server.port ? server.port : server.tls_port,
^
server.c:5058:29: 错误:‘struct redisServer’没有名为‘port’的成员
server.port ? server.port : server.tls_port,
^
server.c:5058:43: 错误:‘struct redisServer’没有名为‘tls_port’的成员
server.port ? server.port : server.tls_port,
yum -y install centos-release-scl && yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils && scl enable devtoolset-9 bash
make distcleanmakemakeIt's a good idea to run 'make test'make testYou need tcl 8.5 or newer in order to run the Redis testyum install -y tclPart2、redis-cli,Redis命令行界面
客户端回复结果作为其他的输出
/usr/local/bin/redis-cli/usr/local/bin/redis-cli incr mycounter > /tmp/output.txt
cat /tmp/output.txt

/usr/local/bin/redis-cli --no-raw incr mycounter > /tmp/output.txt
--raw主机,端口,密码和数据库
/usr/local/bin/redis-cli -h localhost -p 6379 ping-a <password>/usr/local/bin/redis-cli -a myUnguessablePazzzzzword123 ping统计
redis-cli -h IP地址 -p 端口 -a 密码 info keyspace
redis-cli keys "Abc*" | wc -l
从其他程序获取内容当做redis的输入
/usr/local/bin/redis-cli -x set incrcount < /tmp/output.txtvim /tmp/commands.txtset foo 100
incr foo
append foo xxx
get foo
cat /tmp/commands.txt | /usr/local/bin/redis-cli
--rawredis-cli> /tmp/output.txt连续运行相同的命令
-r <count>和-i <delay>

随时间监视RSS内存大小
redis-cli -r -1 -i 1 INFO | grep rss_human
批量操作
vim /tmp/commands.txt
cat /tmp/commands.txt | /usr/local/bin/redis-cli --pipe > /tmp/batchout.tx--pipe
如何批量删除指定的数据
/usr/local/bin/redis-cli keys '1*' |xargs /usr/local/bin/redis-cli del连续统计模式
--stat实时监控-i
扫描大键
/usr/local/bin/redis-cli -x set bigkeyname < /tmp/commands.txtredis-cli --bigkeys
SCAN命令获取按键列表
redis-cli --scan | head -10redis-cli --scan --pattern '*-11*'监控Redis中的操作命令
redis-cli monito
|grepRDB文件的远程备份
redis-cli --rdb /tmp/redisdump.rdb执行LRU模拟
./redis-cli --lru-test 10000000
如果批量删除 带\n后缀的key

-t-t 表示先打印命令,然后再执行。
redis-cli -a daimler1818 del lru:17288 lru:3818127getgetkeys 'lru:*'
\nget "lru:3717577\n"
/data/codis/codis/redis-cli -a password keys "lru*" |head -10 | xargs -I {} -t echo ' del "{}\n"' > /tmp/lrutest.txt
/data/codis/codis/redis-cli -a password keys "lru*"head -10xargs -I {} -t echo 'del "{}\n"'{}echo 'del "{}\n"'del "lru:3717577\n"> /tmp/lrutest.txtcat /tmp/lrutest.txt | ./redis-cli -a password -x
cat /tmp/lrutest.txt | ./redis-cli -a password --pipePart3参考文档

边栏推荐
猜你喜欢

Three classic topics in C language: three-step flip method, Young's matrix, and tossing and dividing method

Implement a customized pin code input control
![[界面开发]DevExpress WinForms流程图控件——XtraDiagrams组件入门指南](/img/0f/ef24101bebfea90e457a92e3017a3e.png)
[界面开发]DevExpress WinForms流程图控件——XtraDiagrams组件入门指南
![[C language] Dynamic memory management](/img/26/c77a9e8d4481c8ce5b02097cb7c747.png)
[C language] Dynamic memory management

MySQL的索引和事务

【C语言】深度剖析数据在内存中的存储

别再到处乱放配置文件了!试试我司使用 7 年的这套解决方案,稳的一秕

C语言小项目 -- 扫雷游戏完整代码(递归展开 + 选择标记)

The programmer essential VS debugging technique

程序员必备的VS调试技巧
随机推荐
Prometheus监控Harbor(二进制版)
MySQL:索引(1)原理与底层结构
萤石、小米对垒智能摄像头
UnsatisfiedDependencyException: Error creating bean with name ‘
“自降估值”3个亿的咖啡独角兽要IPO了
张一鸣挺进生育大业
华谊“在劫难逃”,4年亏掉64亿
Five-faced Alibaba rated P6 after taking the offer: share his interview experience
一名合格的程序员是如何优雅地解决线上问题的?
哈佛大学砸场子:DALL-E 2只是「粘合怪」,生成正确率只有22%
Fluorite, millet against smart camera
MySQL的索引和事务
指针和数组笔试题解析
使用.NET简单实现一个Redis的高性能克隆版(三)
SQL的INSERT INTO和INSERT INTO SELECT语句
(7)FlinkSQL将kafka数据写入到mysql方式二
Qt 在循环中超时跳出
logistic回归模型—基于R
Flink1.15源码阅读——StreamGraph流图
R语言ggplot2可视化:使用ggpubr包的ggtexttable函数可视化表格数据(直接绘制表格图或者在图像中添加表格数据)、使用tab_add_hline函数为表头添加横线并自定义线条宽度