12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
mysql数据库 时间:2024-12-25 09:56:18
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
查看表的创建命令SHOW CREATE TABLE my_table_name;查看表是否分区(Create_options 字段为 partitioned 或空)SHOW TABLE STATUS LIKE '%my_table_name%';查看分区信息
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
查看表的创建命令
SHOW CREATE TABLE my_table_name;
查看表是否分区(Create_options 字段为 partitioned 或空)
SHOW TABLE STATUS LIKE '%my_table_name%';
查看分区信息
# 所有信息SELECT *FROM INFORMATION_SCHEMA.PARTITIONSWHERE TABLE_SCHEMA = 'my_db_name' # 库名 AND TABLE_NAME = 'my_table_name'; # 表名 # 常用信息SELECT PARTITION_METHOD, PARTITION_NAME, PARTITION_EXPRESSION, PARTITION_DESCRIPTION, TABLE_ROWSFROM INFORMATION_SCHEMA.PARTITIONSWHERE TABLE_SCHEMA = SCHEMA() # 库名 AND TABLE_NAME = 'my_table_name'; # 表名
【KEY 分区】
有主键时创建 KEY 分区,建议分区个数为质数。
可参考这篇文章:MySQL之KEY分区引发的血案
经测试,在 MySQL 5.7.26、MariaDB 10.4.6 下,分区个数为偶数时,奇数编号分区数据条数仍然为0。
CREATE TABLE my_table_name ( id INT NOT NULL PRIMARY KEY, name VARCHAR(20))PARTITION BY KEY()PARTITIONS 11; # 11 个分区
无主键时创建 key 分区
CREATE TABLE my_table_name ( name VARCHAR(20))PARTITION BY KEY(name)PARTITIONS 11; # 11 个分区
对于已有表进行分区,建议新建分区表,再导入数据;也可以用 ALTER 语句修改表:
ALTER TABLE my_table_namePARTITION BY KEY() PARTITIONS 11;
【相关阅读】
MySQL/MariaDB Tips
*** walker ***
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19