[转帖]Tiup 常用运维操作命令干货
https://zhuanlan.zhihu.com/p/356031031
**导读**
> 作者:杨漆
> 16年关系型数据库管理,从oracle 9i 、10g、11g、12c到Mysql5.5、5.6、5.7、8.0 到TiDB获得3个OCP、2个OCM;运维路上不平坦,跌过不少坑、熬过许多夜。把工作笔记整理出来分享给大伙儿,希望帮到大家少走弯路、少熬夜。
一、Tiup 常用运维操作命令干货
1.查看集群列表:
tiup cluster list
2.启动顺序 PD->tikv->pump->tidb->tiflash->drainer
tiup cluster start ${cluster-name}
3.启动部分组件
tiup cluster start ${cluster-name} -R pd
4.只启动1.2.3.4和1.2.3.5这两台Server上的PD组件
tiup cluster start ${cluster-name} -N 1.2.3.4:2379, 1.2.3.5:2379
5.查看集群状态:
tiup cluster display ${cluster-name}
6.修改配置参数:
tiup cluster edit-config ${cluster-name}
全局配置:
server_configs:
tidb:
log.slow-threshold:300
仅在某个节点生效:
tidb_servers:
host:10.10.10.2
port:4000
config:
log.slow-threshold:300
### tidb config.toml.example、tikvconfig.toml.example、pd config.toml.example
7.滚动分发配置、重启组件:
tiup cluster reload ${cluster-name} [-N <nodes>][-R <roles>]
### server_configs:
tidb:
performance.txn-total-size-limit: 1073741824
tiup cluster reload ${cluster-name} -R tidb
8.Hotfix版本替换:
替换所有 tiup cluster patch test-cluster /tmp/tidb-profix.tar.gz -R tidb
只替换指定节点 tiup cluster patch test-cluster /tmp/tidb-profix.tar.gz -N 172.16.4.5:4000
9.重命名集群:
tiup cluster rename ${cluster-name} ${new-name}
备注:重命名集群会重启 prometheus和grafana;重命名集群后grafana 可能会残留一些旧集群名的面板,需要手动删除
10.关闭集群:
顺序 drainer->tiflash->tidb->pump->tikv->PD
tiup cluster stop ${cluster-name}
只关闭1.2.3.4和1.2.3.5这两台Server上的tidb组件
tiup cluster stop ${cluster-name} -N 1.2.3.4:4000, 1.2.3.5:4000
11.清除集群数据(关闭所有服务、清空数据目录/日志目录,数据无法恢复,谨慎!)
清空数据保留日志: tiup cluster clean ${cluster-name} --data
清空日志保留数据: tiup cluster clean ${cluster-name} --log
清空日志和数据: tiup cluster clean ${cluster-name} --all
清空prometheus以外的日志和数据: tiup cluster clean ${cluster-name} --all ignore-role prometheus
清空172.30.20.1:9000以外的日志和数据: tiup cluster clean ${cluster-name} --all ignore-role 172.30.20.1:9000
清空172.30.20.2以外的日志和数据: tiup cluster clean ${cluster-name} --all ignore-role 172.30.20.2
12.销毁集群(关闭服务、清空数据和部署目录,无法恢复)
tiup cluster destory ${cluster-name}
二、Tidb Ansible 常用运维操作命令干货
1.启动集群
ansible-playbook start.yml
2.关闭集群
ansible-playbook stop.yml
3.清除集群数据 (关闭TiDB、Pump、TiKV、PD 服务,并清空Pump、TiKV、PD 数据目录)
ansible-playbook unsafe_cleanup_data.yml
4.销毁集群 (关闭集群,并清空部署目录,若部署目录为挂载点,会报错,可忽略)
ansible-playbook unsafe_cleanup.yml
三、 在线修改集群配置(tidb4.0中为实验阶段,不建议生产使用)
通过在线配置变更对各组件进行性能调优而无需重启集群组件
1.查看实例配置
show config
根据对应的字段进行过滤show
show config where type='tidb'
show config where instance in (...)
show config where name like '%log%'
show config where type='tikv' and name='log-level'
2.在线修改TiKV 配置
修改全部TiKV 实例配置 set config tikvlog.level="info"
修改单个TiKV 实例配置 set config "127.0.0.1:20180" log.level="info"





备注:
在线修改TiKV 配置项后,同时会自动修改TiKV 的配置文件。但还需要使用tiup edit-config
命令来修改对应的配置项,否则upgrade 和reload 等运维操作会将在线修改配置后的结果
覆盖。执行tiup edit-config 后不需要执行tiup reload 操作。
3.在线修改PD 配置
set config pd log.level="info"


4.在线修改TiDB 配置
set tidb_slow_log_threshold = 200
查看变量: select @@tidb_slow_log_threshold

[转帖]Tiup 常用运维操作命令干货的更多相关文章
- linux基本语法和常用运维命令
linux上的操作一般是命令行操作,看起来很高大上,让人畏而远之. Help!Help! 忽然间闯入的linux黑黑的世界,怎么办,不要慌.赶紧敲出一个help命令,然后回车,黑色的窗口就会展示一些常 ...
- 转:python常用运维脚本实例
python常用运维脚本实例 转载 file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函 ...
- python常用运维脚本实例【转】
file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函数open()来打开一个文件 . 首先 ...
- DB2常用运维命令
DB2是IBM公司推出关系型数据库管理系统.主要应用于银行.医院等大型机构.现今DB2主要包含以下三个系列:DB2 for Linux, UNIX and Windows(LUW) . DB2在Lin ...
- Liunx常用运维命令整理记录
前言 作为后端开发者,掌握一些常用的运维命令也是很有必要的,本文记录常用Liunx运维命令 基本命令 目录切换 cd base-admin/ 切换到当前目录下的base-admin目录 cd .. 切 ...
- [转帖]Linux企业运维人员最常用150个命令汇总
Linux企业运维人员最常用150个命令汇总 https://clsn.io/clsn/lx998.html 基本上都用过了. 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的 ...
- linux常用运维命令【转】
自己的小网站跑在阿里云的ECS上面,偶尔也去分析分析自己网站服务器日志,看看网站的访问量.看看有没有黑阔搞破坏!于是收集,整理一些服务器日志分析命令,大家可以试试! 1.查看有多少个IP访问: awk ...
- python常用运维脚本实例
转载 file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函数open()来打开一个文件 ...
- nginx常用运维日志分析命令
nginx常用日志分析命令 运维人员必备 常用日志分析命令 1.总请求数 wc -l access.log |awk '{print $1}' 2.独立IP数 awk '{print $1}' acc ...
- (转)ceph 常用 运维命令--查看信息 - 不错的文档
下面是测试验证环节 1. 创建一个 pool rbd create foo --size 4 --image-format 2 --image-feature layering 2. 挂载和格式化 r ...
随机推荐
- libGDX游戏开发之Box2D碰撞(十五)
libGDX游戏开发之Box2D(十四) libGDX系列,游戏开发有unity3D巴拉巴拉的,为啥还用java开发?因为我是Java程序员emm-国内用libgdx比较少,多数情况需要去官网和goo ...
- springboot的启动器
前言 ~ 面试的时候,被问到springboot 官方提供的启动器常见的有哪些?(头大) 正文 ~ 启动器作用: 启动器是为了 适应 一个特定的场景的,里面定义了 这个场景下 需要用到的依赖. 启动器 ...
- SSH默认端口从22修改为其他端口
1.在终端中使用root权限登录到您的Linux服务器. 2.打开终端,并使用适合您的文本编辑器(如vi.nano等)打开SSH配置文件.例如,通过运行以下命令之一: vi /etc/ssh/sshd ...
- 一图看懂华为云CodeArts Link六大特性
本文分享自华为云社区<一图看懂华为云CodeArts Link六大特性,带你体验一站式跨平台数据互联>,作者:华为云PaaS服务小智 . 能够打破不同研发工具之间的壁垒,实现数据的无缝集成 ...
- CIO们开始将软件供应链升级为安全优先级top
开源之所以在软件开发中大量使用的原因是它提供了经过良好测试的构建块,可以加速复杂应用程序和服务的创建.但是第三方软件组件以及包和容器的便利性同时也带来了风险--软件供应链攻击. 软件供应链攻击日益普遍 ...
- Axure 辅助线--栅格化布局
全局辅助线 在所有页面都会显示,比如主页面是框架.子页面通过[内联框架]去加载,为了子页面的元件不偏移,可以创建创建全局辅助线 页面辅助线
- 【设计模式】分享 Java 开发中常用到的设计模式(一)
分享 Java 开发中常用到的设计模式(一) 前言 不知道大家在开发的时候,有没有想过(遇到)这些问题: 大家都是按需要开发,都是一个职级的同事,为什么有些人的思路就很清晰,代码也很整洁.易懂:而自己 ...
- Flask中本地代理的使用
本地代理 当请求到来时应用上下文和程序上下文被推入本地栈中,全局变量current_app,request,g,session都可以使用了.以current_app为例,current_app代表的是 ...
- Linux CentOS 8 安装DHCP服务
DHCP 如果虚拟机没有 /etc/dhcp/dhcpd.conf 文件,这可能是因为 DHCP 服务器软件包尚未安装,或者安装后配置文件未创建. 要创建 DHCP 服务器配置文件 dhcpd.con ...
- Go--统计数组中重复的元素及重复次数
代码: package main import ( "fmt" ) func main() { //创建有重复数值的数组 a1 := []int{1, 2, 3, 1, 4, 5, ...