tikv-ctl的简单学习


摘要

最近在学习使用 tidb.
有一个场景,单独使用了tikv作为键值对的数据库.
但是比较不幸.总是出现宕机的情况
因为这个环境是单独使用tikv 二进制进行安装的
没有grafana和dashboard的界面. 比较难以处理.
只能想着使用tikv-ctl等工具进行一些简单处理.

部署方式

计划使用 tiup 进行部署.
因为能上网, 所以比较简单处理, 就不进行无网络的处理了 curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
source /root/.bash_profile 安装 ctl
tiup ctl:v7.2.0
然后修改一下环境变量
echo "PATH=\$PATH:/root/.tiup/components/ctl/v7.2.0/ " >>/root/.bash_profile
source /root/.bash_profile 需要注意 tiup 其实就将 ctl 安装到默认的一个版本目录下面:
/root/.tiup/components/ctl/v7.2.0/
增加上环境变量后就可以使用 直接使用ctl相关的命令了.

命令学习

1. 查看regions 是否健康
tikv-ctl --data-dir=/data/tikv/data/tikv1 bad-regions
需要注意, 这个命令必须离线才能够验证. 在线是无法验证的.
正常会如此提示: all regions are healthy 2. 查看所有的键值对
tikv-ctl --data-dir=/data/tikv/data/tikv1 raw-scan --limit=99999 >/root/zhaobsh.txt
最后会将键值对的 总数给罗列出来. 3. 查看第二个regions的相关信息.
tikv-ctl --data-dir=/data/tikv/data/tikv1 size -r 2 4. tikv查看具体的键值信息:
tikv-ctl --data-dir=/data/tikv/data/tikv1 print -k zzhaohankey 5. ldb的指令
比较复杂, 参看下面

ldb的帮助信息

# 我怀疑是 rocksDB 复用了 levelDB的命令行工具
# 可以执行备份和恢复的操作. 也可以dump 所有的key 信息.
# 感觉与redis 有一些相似.
ldb - RocksDB Tool commands MUST specify --db=<full_path_to_db_directory> when necessary Data Access Commands:
put <key> <value> [--create_if_missing] [--ttl]
get <key> [--ttl]
batchput <key> <value> [<key> <value>] [..] [--create_if_missing] [--ttl]
scan [--from] [--to] [--ttl] [--timestamp] [--max_keys=<N>q] [--start_time=<N>:- is inclusive] [--end_time=<N>:- is exclusive] [--no_value]
delete <key>
deleterange <begin key> <end key>
query [--ttl]
Starts a REPL shell. Type help for list of available commands.
approxsize [--from] [--to]
checkconsistency
list_file_range_deletes [--max_keys=<N>] : print tombstones in SST files. Admin Commands:
dump_wal --walfile=<write_ahead_log_file_path> [--header] [--print_value] [--write_committed=true|false]
compact [--from] [--to]
reduce_levels --new_levels=<New number of levels> [--print_old_levels]
change_compaction_style --old_compaction_style=<Old compaction style: 0 for level compaction, 1 for universal compaction> --new_compaction_style=<New compaction style: 0 for level compaction, 1 for universal compaction>
dump [--from] [--to] [--ttl] [--max_keys=<N>] [--timestamp] [--count_only] [--count_delim=<char>] [--stats] [--bucket=<N>] [--start_time=<N>:- is inclusive] [--end_time=<N>:- is exclusive] [--path=<path_to_a_file>]
load [--create_if_missing] [--disable_wal] [--bulk_load] [--compact]
manifest_dump [--verbose] [--json] [--path=<path_to_manifest_file>] [--sst_file_number=<sst_file_number>]
file_checksum_dump [--path=<path_to_manifest_file>]
get_property <property_name>
list_column_families
create_column_family --db=<db_path> <new_column_family_name>
drop_column_family --db=<db_path> <column_family_name_to_drop>
dump_live_files
idump [--from] [--to] [--input_key_hex] [--max_keys=<N>] [--count_only] [--count_delim=<char>] [--stats]
list_live_files_metadata [--sort_by_filename]
repair [--verbose]
backup [--backup_env_uri | --backup_fs_uri] [--backup_dir] [--num_threads] [--stderr_log_level=<int (InfoLogLevel)>]
restore [--backup_env_uri | --backup_fs_uri] [--backup_dir] [--num_threads] [--stderr_log_level=<int (InfoLogLevel)>]
checkpoint [--checkpoint_dir]
write_extern_sst <output_sst_path>
ingest_extern_sst <input_sst_path> [--move_files] [--snapshot_consistency] [--allow_global_seqno] [--allow_blocking_flush] [--ingest_behind] [--write_global_seqno]
unsafe_remove_sst_file <SST file number> MUST NOT be used on a live DB.

tikv-ctl的简单学习的更多相关文章

  1. Log4j简单学习笔记

    log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...

  2. shiro简单学习的简单总结

    权限和我有很大渊源. 培训时候的最后一个项目是OA,权限那块却不知如何入手,最后以不是我写的那个模块应付面试. 最开始的是使用session装载用户登录信息,使用简单权限拦截器做到权限控制,利用资源文 ...

  3. CentOS 简单学习 firewalld的使用

    1. centos7 开始 使用firewalld 代替了 iptables 命令工具为 firewall-cmd 帮助信息非常长,简单放到文末 2. 简单使用 首先开启 httpd 一般都自带安装了 ...

  4. Windows 下 Docker 的简单学习使用过程之一 dockertoolbox

    1. Windows 下面运行 Docker 的两个主要工具1): Docker for Windows2): DockerToolbox区别:Docker For Windows 可以理解为是新一代 ...

  5. 在MVC中实现和网站不同服务器的批量文件下载以及NPOI下载数据到Excel的简单学习

    嘿嘿,我来啦,最近忙啦几天,使用MVC把应该实现的一些功能实现了,说起来做项目,实属感觉蛮好的,即可以学习新的东西,又可以增加自己之前知道的知识的巩固,不得不说是双丰收啊,其实这周来就开始面对下载在挣 ...

  6. Linux——帮助命令简单学习笔记

    Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信 ...

  7. OI数学 简单学习笔记

    基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...

  8. mongodb,redis简单学习

     2.mongodb安装配置简单学习                   配置好数据库路径就可以mongo命令执行交互操作了:先将服务器开起来:在开个cmd执行交互操作                 ...

  9. html css的简单学习(三)

    html css的简单学习(三) 前端开发工具:Dreamweaver.Hbuilder.WebStorm.Sublime.PhpStorm...=========================== ...

  10. html css的简单学习(二)

    html css的简单学习(二) <!Doctype html>告诉浏览器,这是一个html文档.lang="en" 默认是en,表示英语:zh-Hans 中文简体:z ...

随机推荐

  1. libGDX游戏开发之打包游戏(十二)

    libGDX游戏开发之打包游戏(十二) libGDX系列,游戏开发有unity3D巴拉巴拉的,为啥还用java开发?因为我是Java程序员emm-国内用libgdx比较少,多数情况需要去官网和goog ...

  2. kubernetes之部署war项目(二)

    kubernetes之部署war项目(二) k8s系列 源自我工作上的实际场景,记录于此. 现在老项目是war包形式,需要基于tomcat部署,因此在打包镜像时将tomcat带上的. 假设我的war项 ...

  3. k8s在删除pod时优雅关闭sigterm信号传输失败

    背景 随着云原生技术的流行,越来越多的应用选择容器化,容器化的话题自然离不开 Kubernetes .Pod 是 Kubernetes 中创建和管理的.最小的可部署的计算单元,一个 Pod 中有多个容 ...

  4. ClickHouse(21)ClickHouse集成Kafka表引擎详细解析

    目录 Kafka表集成引擎 配置 Kerberos 支持 虚拟列 资料分享 参考文章 Kafka表集成引擎 此引擎与Apache Kafka结合使用. Kafka 特性: 发布或者订阅数据流. 容错存 ...

  5. 创建傀儡进程svchost.exe并注入DLL文件(Shellcode)

    本文主要利用 SetThreadContext 修改进程中的线程上下文来实现Dll注入(ShellCode). 实现原理 首先,使用 CreateProcess 函数创建svchost.exe进程,并 ...

  6. 完美解决Python词云库wordcloud不显示中文问题

    你的Python词云库wordcloud显示的都是方框吗?别担心,我有一个妙招让你的中文词云变得美观又清晰! 背景: wordcloud是一个基于python的词云生成库,它可以让你用简单的代码创建出 ...

  7. row_number函数的不稳定性

    本文分享自华为云社区<row_number函数的不稳定性>,作者: nullptr_ . row_number为窗口函数,用来为各组内数据生成连续排号 基础用法 postgres=# se ...

  8. 这场世界级的攻坚考验,华为云GaussDB稳过

    摘要:实践证明,华为云GaussDB完全经受住了这场世界级的攻坚考验,也完全具备支撑大型一体机系统迁移上云的能力,并积累了丰富的经验. 本文分享自华为云社区<这场世界级的攻坚考验,华为云Gaus ...

  9. SARIF在应用过程中对深层次需求的实现

    摘要:为了降低各种分析工具的结果汇总到通用工作流程中的成本和复杂性, 业界开始采用静态分析结果交换格式(Static Analysis Results Interchange Format (SARI ...

  10. 在springboot中,如何读取配置文件中的属性

    摘要:在比较大型的项目的开发中,比较经常修改的属性我们一般都是不会在代码里面写死的,而是将其定义在配置文件中,之后如果修改的话,我们可以直接去配置文件中修改,那么在springboot的项目中,我们应 ...