SELECT * FROM INFORMATION_SCHEMA.tables WHERE tidb_table_id=‘2079703’;
SELECT * FROM INFORMATION_SCHEMA.PARTITIONS a WHERE a.TIDB_PARTITION_ID=‘2079703’;
都找不到?
这个SELECT a.TIDB_TABLE_ID FROM INFORMATION_SCHEMA.tables a;
并发太少,数据量太小,建议并发1000,表20或者更多,数据量1000W
oracle基于cost的优化器做的算很好的了,但是也不见得所有sql都能选到对的连接模式,而且tidb是分布式的数据库,跟oracle又不太一样。
1.在遇到这种语句时,希望能够选择合适的join算法—这个每个数据库都想做到,但是很难做到百分百准确,而且对统计信息的依赖很高
2.最好不要依赖SEMI_JOIN_REWRITE() 这种hint的写法,能够做到自适应去寻找效率高的join 算法—跟上面差不多,对统计信息的依赖很高
这些都是cost优化器一直需要提高的地方
tiup mirror show看下你的镜像地址配置的什么,如果不能连外网只能配置离线镜像库目录
对,我的是多个节点,不同的节点这个值应该都是不一样的。
不过用了AUTO_ID_CACHE=1,按理来说,每个节点应该是一样的,但是INFORMATION_SCHEMA.tables表是不能做准的。就算INFORMATION_SCHEMA.tables表里AUTO_INCREMENT是1,你测试下插入的时候应该不是1吧。。。。
另外,你show create table看下呢?
INFORMATION_SCHEMA.tables这个表里的AUTO_INCREMENT应该不准吧?
[image]我们现在的性能压力很小,距离瓶颈还远得很,等有压力了再升级
汇总类sql的话建议加一个tiflash节点,体验感绝对很好。
对应报错sql的表tiflash副本置为0后重新置为1看下
这边不建议重启,你直接先看下storage.block-cache.capacity这个值设置多少
SHOW config WHERE NAME LIKE ‘%storage.block-cache.capacity%’;
然后修改为原来的一半左右,参数立即生效,内存很快释放。
SET config tikv storage.block-cache.capacity=10G;
你在1个规则里面可以定义多种规则啊,例如这样
block-allow-list: # 定义数据源迁移表的过滤规则,可以定义多个规则。如果 DM 版本早于 v2.0.0-beta.2 则使用 black-white-list
bw-rule-1: # 规则名称
do-dbs: ["~^test.*", "user"] # 迁移哪些库
ignore-dbs: ["mysql", "account"] # 忽略哪些库
do-tables: …
这样
block-allow-list: # 如果 DM 版本早于 v2.0.0-beta.2 则使用 black-white-list。
rule-1:
do-dbs: ["test*"] # 非 ~ 字符开头,表示规则是通配符;v1.0.5 及后续版本支持通配符规则。
do-tables:
- db-name: "test[123]" # 匹配 test1、test2、test3。
tbl-name: "t[1-5]" # 匹配 t1、t2、t3、t4、t5。
- db-name: "…