mysql如何查看当前分区表的情况?

mysql如何查看当前分区表的情况?,第1张

1、查看当前MySQL数据库是否支持分区,可以利用命令:show variables like '%partition%'。

2、判断当前数据库版本是否安装了分区插件,利用命令show plugins。

3、创建数据库表并建立表分区,利用命令,结果发现报错。

4、修改创建数据库表主键设置,将其去掉,再次运行命令。

5、查看某张表是不是分区表,可以利用命令show table status。

6、就可以查看具体数据库下的某张表的分区情况了。

如果表 PartitionTable

已分区,以下查询将返回一个或多个行。

如果表未分区,则不返回任何行。

SELECT * FROM sys.partitions AS p

JOIN sys.tables AS t

ON p.object_id = t.object_id

WHERE p.partition_id IS NOT NULL

AND t.name = 'PartitionTable'

以下查询返回表的分区列的名称。

PartitionTable.

SELECT t.object_id AS Object_ID, t.name AS TableName, ic.column_id as PartitioningColumnID, c.name AS PartitioningColumnName

FROM sys.tables AS t

JOIN sys.indexes AS i

ON t.object_id = i.object_id

JOIN sys.columns AS c

ON t.object_id = c.object_id

JOIN sys.partition_schemes AS ps

ON ps.data_space_id = i.data_space_id

JOIN sys.index_columns AS ic

ON ic.object_id = i.object_id AND ic.index_id = i.index_id AND ic.partition_ordinal >0

WHERE t.name = 'PartitionTable'

AND i.type <= 1

AND c.column_id = 1

select * from 表 partition (分区表名) -->不管是1级分区还是2级分区都是用partition

select partition_name , subpartition_name from information_schema.partitions where table_schema='你的数据库名' and table_name='你的表名'(这个语句可以查到你的表的分区名是什么,1级分区和2级分区都可以看)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10003860.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存