【赵渝强老师】TiDB的配置文件

在这里插入图片描述

TiDB集群的配置文件主要包括:TiKV、TiDB、PD和TIFlash的配置文件,执行下面的命令可以查看到所有相关的配置文件。

# tree /tidb-deploy/{tidb*,pd*,tikv*,tiflash*}/conf

输出的信息如下:
/tidb-deploy/tidb-4000/conf
└── tidb.toml
/tidb-deploy/pd-2379/conf
└── pd.toml
/tidb-deploy/tikv-20160/conf
└── tikv.toml
/tidb-deploy/tiflash-9000/conf
├── tiflash-learner.toml
└── tiflash.toml
视频讲解如下

【赵渝强老师】TiDB的配置文件

TiDB不建议直接修改这些配置文件,而是通过使用tiup cluster edit-config命令进行修改,例如:

tiup cluster edit-config mytidb-cluster

# 提示:mytidb-cluster是TiDB集群的名称。

此时将进入Linux的vi编辑器,如下所示:

global:
  user: tidb
  ssh_port: 22
  ssh_type: builtin 
  deploy_dir: /tidb-deploy
  data_dir: /tidb-data
  os: linux
  systemd_mode: system
monitored:
  node_exporter_port: 9100
  blackbox_exporter_port: 9115
  deploy_dir: /tidb-deploy/monitor-9100
  data_dir: /tidb-data/monitor-9100
  log_dir: /tidb-deploy/monitor-9100/log
server_configs:
  tidb:
    instance.tidb_slow_log_threshold: 300 # 可以将慢查询的时间阈值修改成600
  tikv:
......

保存退出vi编辑器,将出现下面的提示信息:

Please check change highlight above, 
do you want to apply the change? [y/N]:(default=N)

输入y后,再执行下面的命令重新加载配置信息。

# tiup cluster reload mytidb-cluster

提示:重新加载配置信息时可以指定某个节点上运行的某个服务,完整的命令格式如下:
tiup cluster reload mytidb-cluster [-N <nodes>] [-R <roles>]
其中:
[-N <nodes>]:表示指定要重启的节点,不指定则表示所有节点。
              该选项的值为以逗号分割的节点ID列表,节点ID为集群状态表格的第一列。
[-R <roles>]:表示指定要重启的角色,不指定则表示所有角色。
             该选项的值为以逗号分割的节点角色列表,角色为集群状态表格的第二列。

例如下面的语句只会重新加载192.168.79.11节点上的PD服务:
# tiup cluster reload mytidb-cluster -N 192.168.79.11 -R pd

《TiDB数据库从零开始》

### TiDB 集群组件配置方法 #### 修改 TiDB 组件配置 TiDB 支持通过 SQL 命令对各个组件进行在线配置变更,这使得管理员可以在不重启服务的情况下调整参数设置。例如,在 TiDB 中可以通过 `SET GLOBAL` 或者 `SET CONFIG` 来更改全局变量或特定模块的配置选项[^1]。 ```sql -- 设置 TiDB 的 max_execution_time 参数为 60 秒 SET GLOBAL tidb_max_execution_time = 60; ``` #### 修改 PD 组件配置 对于 Placement Driver (PD),同样能够利用类似的 SQL 接口来动态调整其行为模式。比如调节 leader 调度频率等重要属性: ```sql -- 将 PD 的 schedule.max-snapshot-count 设定为更高值以适应大规模集群需求 SET CONFIG pd "schedule.max-snapshot-count"="5"; ``` #### 修改 TiKV 组件配置 针对存储节点 TiKV ,也可以采用相同的方式来进行实时调控。这里展示如何优化 Raftstore 线程池大小的例子: ```sql -- 动态增加 TiKV raftstore.store-pool-size 到更合理的数值 SET CONFIG tikv "raftstore.store-pool-size"=8; ``` 需要注意的是,当这些操作应用于基于 Kubernetes 托管的服务时,可能会遇到一个问题——即一旦发生升级或是重启事件之后,之前所做的改动将会被原始定义于 TidbCluster 自定义资源描述符(CRD)内的默认设定所取代,从而造成自定义配置丢失的情况出现。 为了防止这种情况的发生,建议将必要的持久化配置直接写入到 TidbCluster CRD 文件之中;或者考虑使用其他机制如 ConfigMap 来保存并应用所需的个性化设置。 另外,如果打算新建一个 TiDB 实例的话,则推荐按照官方文档指引先准备好环境再依照标准流程完成整个过程,期间会涉及到安装 TiUP 及其 cluster 插件等一系列准备工作[^2][^3]。 最后提醒一点就是保持工具链处于最新状态有助于获得更好的体验以及更多的特性支持,因此定期执行如下命令确保一切正常是非常有帮助的[^4]: ```bash tiup update --self && tiup update cluster ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵渝强老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值