Redis常用运维命令
1.启动命令
按照我其他博客的按照方法,启动命令为/etc/init.d/redis_6379 start
2.查看内存统计信息
[root@bogon ~]# redis-cli
127.0.0.1:> info memory
# Memory
used_memory:821512 #由 Redis 分配器分配的内存总量,包含了redis进程内部的开销和数据占用的内存,以字节(byte)为单位
used_memory_human:.26K #以更直观的单位展示分配的内存总量。以下含有human的都是以更加直观的单位显示而已
used_memory_rss:7704576 #向操作系统申请的内存大小。与 top 、 ps等命令的输出一致
used_memory_rss_human:7.35M
used_memory_peak:821512 #redis的内存消耗峰值(以字节为单位)
used_memory_peak_human:.26K
total_system_memory:1023934464 #整个系统内存
total_system_memory_human:976.50M
used_memory_lua:37888 #Lua脚本存储占用的内存
used_memory_lua_human:.00K
maxmemory:0 #Redis实例的最大内存配置
maxmemory_human:0B
maxmemory_policy:noeviction #当达到maxmemory时的淘汰策略
mem_fragmentation_ratio:9.38 #碎片率,used_memory_rss/ used_memory
mem_allocator:jemalloc-4.0.3 #内存分配器
127.0.0.1:>
3.查询慢命令
127.0.0.1:> slowlog get #后面加个10,可以查询最慢的10条命令
) ) (integer)
) (integer)
) (integer)
) ) "info"
) "memory"
127.0.0.1:>
4.碎片率处理
内存碎片率稍大于1是合理的,这个值表示内存碎片率比较低,也说明redis没有发生内存交换。但如果内存碎片率超过1.5,那就说明Redis消耗了实际需要物理内存的150%,其中50%是内存碎片率,这些碎片所占用的内存代表的含义是Redis没有把内存归还给操作系统。若是内存碎片率低于1的话,说明Redis内存分配超出了物理内存,操作系统正在进行内存交换。
解决redis内存碎片问题:
1、如果内存碎片率超过1.5,重启Redis服务器可以让额外产生的内存碎片失效并重新作为新内存来使用,使操作系统恢复高效的内存管理。在重启服务之前,可以手动save一次redis数据,这样能保证在执行Redis关闭时不丢失任何数据。
2、如果内存碎片率低于1,Redis实例可能会把部分数据交换到硬盘上。内存交换会严重影响Redis的性能,所以应该增加可用物理内存或减少实Redis内存占用。
3、修改redis内存分配器。Redis支持glibc、jemalloc、tcmalloc几种不同的内存分配器,每个分配器在内存分配和碎片上都有不同的实现。通常使用redis默认的jemalloc内存分配器即可。
5.查看当前库中的key数量
127.0.0.1:> dbsize
(integer)
6.Redis应用场景
1.缓存 2.计数器 3.排行榜 4.定位功能 5.简单的信息系统 6.交友
7.登陆命令
redis-cli -p -a password
8.持久化
save:将数据同步保存到磁盘 bgsave:将数据异步保存到磁盘 lastsave:返回上次成功将数据保存到磁盘的Unix时戳 shundown:将数据同步保存到磁盘,然后关闭服务
9.测试Redis性能
redis-benchmark-h localhost -p -c -n 100000 #100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能
10.查询系统信息
redis-cli info
11.查询慢查询条数
slowlog len
12.清空慢查询
slowlog reset
Redis常用运维命令的更多相关文章
- linux基本语法和常用运维命令
linux上的操作一般是命令行操作,看起来很高大上,让人畏而远之. Help!Help! 忽然间闯入的linux黑黑的世界,怎么办,不要慌.赶紧敲出一个help命令,然后回车,黑色的窗口就会展示一些常 ...
- DB2常用运维命令
DB2是IBM公司推出关系型数据库管理系统.主要应用于银行.医院等大型机构.现今DB2主要包含以下三个系列:DB2 for Linux, UNIX and Windows(LUW) . DB2在Lin ...
- Liunx常用运维命令整理记录
前言 作为后端开发者,掌握一些常用的运维命令也是很有必要的,本文记录常用Liunx运维命令 基本命令 目录切换 cd base-admin/ 切换到当前目录下的base-admin目录 cd .. 切 ...
- DG常用运维命令及常见问题解决
DG常见运维命令及常见问题解决方法 l> DG库启动.关闭标准操作Dataguard关闭1).先取消日志应用alter database recover managed standby data ...
- linux系列之常用运维命令整理笔录
目录 本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍 ...
- linux常用运维命令【转】
自己的小网站跑在阿里云的ECS上面,偶尔也去分析分析自己网站服务器日志,看看网站的访问量.看看有没有黑阔搞破坏!于是收集,整理一些服务器日志分析命令,大家可以试试! 1.查看有多少个IP访问: awk ...
- Oracle 常用运维命令整理
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 一.oracle建库与删库命令 (1)oracle11g ...
- (转)ceph 常用 运维命令--查看信息 - 不错的文档
下面是测试验证环节 1. 创建一个 pool rbd create foo --size 4 --image-format 2 --image-feature layering 2. 挂载和格式化 r ...
- redis相关运维命令
1. 查询redis里面的大key? 在redis实例上执行bgsave,然后我们对dump出来的rdb文件进行分析,找到其中的大KEY 有个不太推荐的命令,debug object xxx 可以看到 ...
随机推荐
- 用户体验报告(Echo)
班级:软件工程1916|W 作业:项目Beta冲刺(团队) 团队名称:Echo 团队博客汇总 队员学号 队员姓名 个人博客地址 备注 221600136 张至锋 https://www.cnblogs ...
- python基础语法6 名称空间与作用域
目录: 1.函数对象 2.函数嵌套 3.名称空间 4.作用域 函数是第一类对象 1.函数名是可以被引用: def index(): print('from index') a = index a() ...
- 在WSL中安装zsh终端
cmder中设置: 新增task,名称为wsl::bash,右下方的方框内填写: "%ConEmuBaseDirShort%\wsl;%PATH%" & %ConEmuBa ...
- hash isEqual
hash Returns an integer that can be used as a table address in a hash table structure. If two object ...
- c++、oc、swift初步评价
c++是面向对象的多态语言: oc是面向对象的动态语言: swift是面向对象.面向协议.高阶类型.函数式编程语言:
- CF388C&&2018EC Final D题——博弈&&水题
一下两个题目都是按堆取石子,轮流取,每个人都贪心的取即可,感觉都不像博弈. CF388C 有n排石子,每排有若干堆.Ciel可以选择一排,拿走这一排的第一堆石子.Jiro可以选择一排,拿走这一排的最后 ...
- systemd socket activation golang demo
service define rongapp.service [Unit] Description=rong Hello World HTTP Requires=network.target rong ...
- apache pinot-docker-compose 运行试用
apache pinot 是一个实时的OLAP 数据存储,同时包含了自己的查询语言,因为maven 构建花费时间较大 所以使用docker-compose 运行 docker-compose 文件 ...
- 抽样方法(Sampling Method)
概率抽样方法: 1. 随机抽样(random sampling):从有限总体中简单随机抽样或从无限总体中随机抽样. 具体实现方式:a. 抽签法:b. 随机数字法 2. 分层抽样(stratified ...
- Android Studio 之 SharedPrefences 数据持久性保存
SharedPreferences 会在应用包目录中生成一个xml文件,将数据保存在里面 可以实现数据持久性保存. 创建的数据,保存在 Data -> Data -> 包名 -> s ...