【 TiDB 使用环境】生产环境 or 测试环境 or POC
【 TiDB 版本】
【遇到的问题】
【复现路径】做过哪些操作出现的问题
【问题现象及影响】
【附件】
请提供各个组件的 version 信息,如 cdc/tikv,可通过执行 cdc version/tikv-server --version 获取。
【 TiDB 使用环境】生产环境 or 测试环境 or POC
【 TiDB 版本】
【遇到的问题】
【复现路径】做过哪些操作出现的问题
【问题现象及影响】
【附件】
请提供各个组件的 version 信息,如 cdc/tikv,可通过执行 cdc version/tikv-server --version 获取。
能举个例子吗,我安装的是V6.0.0 第一次使用tidb
是刚安装,还是已经部署了集群呢
已经部署了集群,我登陆到mysql了
mysql> show variables like ‘%connect%’;
±----------------------------------------------±----------------+
| Variable_name | Value |
±----------------------------------------------±----------------+
| character_set_connection | utf8 |
| collation_connection | utf8_general_ci |
| connect_timeout | 10 |
| disconnect_on_expired_password | 1 |
| init_connect | |
| max_connect_errors | 100 |
| max_connections | 151 |
| max_user_connections | 0 |
| performance_schema_session_connect_attrs_size | 512 |
±----------------------------------------------±----------------+
9 rows in set (0.02 sec)
我想修改参数,永久生效,类似mysql里 修改my.cnf配置文件那样
有个概念需要理解一下,tidb集群中,有两种配置,一种是持久化在数据库中的,sql来设置的配置,用global可以永久生效,一种是持久化在部署集群时的拓扑文件中的,刚刚我发的就是持久化在拓扑文件中的一些配置,可以永久生效
参考这个max_connections = 151 的环境变量在tidb中并不准确,或者说没有意义,tidb默认是不限制最大连接数的,具体参考文档。
TiDB 配置文件描述 | PingCAP Docs
如果你要修改最大连接数,对于已经部署的,可以使用tiup cluster edit-config 去修改 tidb组件下的 max-server-connections
。
参考:
至于默认字符集,跟mysql是类似的,不过tidb支持的字符集并没有mysql那么多,具体参考:
字符集和排序规则 | PingCAP Docs
能给个例子吗,比如我想修改最大连接数这个参数max_connections =10000
在mysql命令模式下修改了
mysql> set global max_connections=10000;
Query OK, 0 rows affected (0.26 sec)
这种方式集群重启后会失效的吧?
我这里怎么找不到你说的server_configs这个段落呢?
global:
user: tidb
ssh_port: 22
ssh_type: builtin
deploy_dir: /tidb-deploy
data_dir: /tidb-data
os: linux
arch: amd64
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
tidb_servers:
这个在tidb里面是不会生效的, 在tidb
中,max_questions
, max_updated
, max_connections
以及 max_user_connections
,都只是做成兼容的样子,能查也能改,只是给你看,但是并没有实际意义,具体可参考: 与 MySQL 安全特性差异 | PingCAP Docs
修改了配置,reload会自动重启动集群 是这样的吧?
tiup cluster reload mytidb_cluster
是的,改了之后,reload就可以了
感谢了,学习了
reload的时候可以注意一下,加 -N 后面接ip和端口,可以指定实例reload,加 -R 接名称,比如tidb、pd、tikv可以只reload指定的某一类实例
对于tidb-server 我记得文档里面说是单节点最大连接数是1000,测试最佳是500,那到底是看500比较准还是数据库查询出来的151比较准确呢?还有一个问题比如我现在的连接数已经达到了200超过了数据库里面查询出来的151,是否会报错
这个我在前面回复过了, 在 tidb
中, max_questions
, max_updated
, max_connections
以及 max_user_connections
,都只是做成兼容的样子,能查也能改,只是给你看,但是并没有实际意义,影响tidb最大连接的就是我说的那个参数。数据库中查出来的max_connections =151只是为了兼容mysql而存在的,没有任何实际作用,不能作为参考。
字符集建议你提前规划好,改字符集很容易改出问题。
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。