如何使用 Navicat 对 MySQL 表进行分区 您所在的位置:网站首页 navicat的日期型怎么设置 如何使用 Navicat 对 MySQL 表进行分区

如何使用 Navicat 对 MySQL 表进行分区

2024-06-17 02:54| 来源: 网络整理| 查看: 265

如何使用 Navicat 对 MySQL 表进行分区 2021 年 7 月 23 日,由 Robert Gravelle 撰写

在上周的文章中,我们了解了在处理大型数据集时利用数据库分区的潜在用途和优势。在今天的后续文章中,我们将使用哈希分区准则在 Navicat for MySQL 中创建一个 MySQL 分区。

在 Navicat 中启动分区对话框

在 Navicat 中,你会在表设计器的“选项”选项卡(页面底部)中找到“分区”按钮:

点击此按钮可打开“分区”对话框。

在表上创建哈希分区

“分区”对话框中的第一个控件是分割由下拉菜单:

支持的分区类型取决于数据库类型和版本。以下是你可以在 Navicat 中找到 MySQL 7 的选项:

Range partitioning(范围分区):范围(或间隔)分区在组织类似数据时很有用,特别是日期和时间数据。因此,范围分区非常适合对历史数据进行分区。 List partitioning(列表分区):根据离散值将行显式映射到分区。例如,南部各州的所有客户可以存储在一个分区中,而北部各州的客户可以存储在不同的分区中。 Composite partitioning(复合分区):基于分区键标识的多维分区。例如,你可能决定以只读、压缩格式存储特定产品类型的数据,并保持其他产品类型数据未压缩。复合分区还显着增加了分区数量,这可能有利于高效并行执行。 Round-robin partitioning(循环分区):以循环方式将行分配给每个分区,以便每个分区包含或多或少相等的行数,并实现负载平衡。在这种情况下,没有分区键,因此行在所有分区中随机分布。 Hash partitioning(哈希分区):基于历史数据在分区之间随机分布数据,而不是将相似的数据分组。尽管可以识别分区键,但在不知道应该驻留在哪个分区数据中的情况下仍很有用。因此,数据的分布使其不对应于业务或数据的逻辑视图,就像范围分区中那样。 一些注意事项

为了从分区中受益,你需要确保:

如果你确实提供了对表进行分区的列,则它是该表中每个唯一键的一部分。 你正在用查询中最常用的列对表进行分区。否则,创建分区将没有任何好处。 定义分区详细信息

“分区”对话框支持许多选项,包括子分区以及手动创建分区定义的能力。但是,对于简单的哈希分区,我们只需要提供分区准则、(表列)和分区数:

点击“确定”按钮,只需简单的一步即可创建分区!

在“SQL 预览”选项卡中,你可以查看 Navicat 生成的 SQL 语句

ALTER TABLE `sakila2`.`film` PARTITION BY HASH (actor) PARTITIONS 10 (PARTITION `p0` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p1` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p2` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p3` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p4` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p5` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p6` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p7` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p8` MAX_ROWS = 0 MIN_ROWS = 0 , PARTITION `p9` MAX_ROWS = 0 MIN_ROWS = 0 ) ; 总结

在今天的文章中,我们使用哈希分区准则在 Navicat for MySQL 中创建了一个 MySQL 分区。

如果你对 Navicat for MySQL 感兴趣,可以免费试用 14 天!

Rob Gravelle 居住在加拿大渥太华,是一名有 20 多年经验的 IT 专家。过往,Rob 曾为与情报有关的组织(如加拿大边境服务局和各种商业组织)构建系统。在业余时间,Rob 是一名出色的吉他演奏家,他拥有多张 CD 和数字发行版。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有