`

mysql 分区表 partion

阅读更多

     

1.1. 场景

在每个系统中都会生成一些日志,往往有些日志都是需要记录的,比如:生成订单的过程的一些记录、某个账号活动的一些信息。这样一来每天生成的日志会很多,而且还会生成到数据库中。

像这些记录信息在某段时间过后就没用了。为了节省空间资源,和产品确认这些信息只保留3个月的。3个月之前的都可以删了。

1.2. 使用普通表记录这些数据

一般情况下大家都知道创建一些日志表存放这些数据,之后就在每个月初去删除三个月以前的日志记录(不管用手动人工执行删除或使用定时任务)。

这种方法看上去很可行的。当是,使用delete删除3月以前的数据,其实磁盘的空间是没有人减少的。懂得的人会去做Optimize、或者从新导入导出数据。可是像这种优化和导入导出的方法在数据量大的时候是很不可行的。因此,就会陷入尴尬的境地。

1.3. 使用partition table(分区表)

使用partition table的方法来存储这些数据就很有优势了。我们只要在每个月初创建下一个月的分区,在删除3月前的分区就好了。由于每个分区都是存储在不同的表空间文件中(这里使用的不是共享表空间模式)。所以在删除了分区之后空间会直接的释放出来。

提示:可以使用压缩比高的TokuDB引擎,该引擎的数据压缩会比原来的小5-10倍。

 

1.4. 使用普通表和partition table对比演示

 

 

  • 使用普通表的演示

 

查看normal_table表占用磁盘空间大小

上面可以看到表的数据是1.8G。这时候按需求我们删除前3月的数据(这里我们删除一月份的数据)

继续查看现在的磁盘空间

理想的情况下应该是normal_table.ibd文件的空间大小应该会减少才对,可是并不是想象的那样。它的空间大小还是不变的。

这时候你需要让空间稍稍的释放出来就需要使用优化表命令

可以看到空间被释放出来了。

  • 使用partition table

 

查看使用磁盘的容量情况

上面我们可以看到分区表的结构是每一个分区有着自己的表空间。

现在我们删除1月份的数据,这里我们只需要删除p1分区就好。

可以看到只要我们删除表空间就能直接的释放磁盘空间。

1.5. 总结

上面的演示可以看到在保存日志之类的数据使用partition是在合适不过的了,不仅能节省空间还很方便我们的维护。

分享到:
评论

相关推荐

    Oracle分区表详解

    ### Oracle 分区表详解 #### 一、Oracle 分区简介 Oracle 的分区技术是一种用于管理和优化超大型表和索引的有效手段。通过将一个大型的表或者索引分割成多个较小且可管理的部分,分区技术能够显著提升数据库的性能...

    MYSQL 通过分区(Partition)提升MySQL性能

    以下是一个使用`Range`分区的例子,展示了如何创建一个基于`c3`列中年份的分区表`part_tab`: ```sql CREATE TABLE part_tab ( c1 INT DEFAULT NULL, c2 VARCHAR(30) DEFAULT NULL, c3 DATE DEFAULT NULL ) ...

    小米4分区工具

    认为有必要的备份好整个分区表和分区(极力推荐备份)。 也可以用我提供的备份(有些分区是各手机私有的不能用我的备份分别是ssd dbi bk1 bk2 modemst1 modemst2 fsc bk3 fsg bk4 bk5 这11个分区同时也是不可动的...

    ORACLE分区与索引

    1. **增强可用性**:分区表的某个分区出现故障,不会影响其他分区,确保了数据的持续可用。 2. **维护便利**:只需要修复故障的分区,无需对整个表进行操作。 3. **均衡 I/O**:可以将不同分区映射到不同磁盘,平衡...

    oracle表分区.[归类].pdf

    1. 现有表转换:已有的非分区表不能直接转为分区表,需要使用Oracle提供的在线重定义功能。 三、Oracle分区方法 1. 范围分区:基于特定列的数值范围进行分区,如按序号或日期创建分区。 2. Hash分区:通过哈希函数...

    js代码-Partion寻找中位数

    在JavaScript编程语言中,"js代码-Partion寻找中位数"这个主题涉及到的是数据排序和统计中的一个重要概念——中位数。中位数是一组数值的中间值,当数值按大小顺序排列后,如果数值个数是奇数,中位数就是正中间的...

    windows_2003_partion1

    一共10部分, windows_2003_partion1

    linux磁盘分区详解 (怎样学习磁盘分区)

    Linux磁盘分区可以分为基本分区(primary partion)和扩充分区(extension partion)两种。 基本分区和扩充分区的数目之和不能超过四个。基本分区可以马上被使用但不能再分区。扩充分区必须再进行分区后才能使用,...

    fuzzy-partion.rar_fuzzy logic code_fuzzy logic source_logic

    “fuzzy partion.m”可能是实现特定模糊逻辑系统的MATLAB脚本,例如可能涉及到数据分区或分类问题。源码分析需关注以下几个关键部分: 1. 输入和输出变量定义:模糊系统需要明确的输入和输出,源码会定义这些变量的...

    Paragon Partition Manager 9.0分区魔术师

    《Paragon Partition Manager 9.0:分区管理的艺术与实践》 Paragon Partition Manager 9.0,被誉为“分区魔术师”,是一款强大的硬盘分区管理工具,专为个人和企业用户提供无损分区的服务。这款软件以其易用性、...

    MiniToolPartitionRecovery.zip

    1. **分区搜索与识别**:软件能够深度扫描磁盘,识别丢失或被隐藏的分区,即使分区表损坏,也能通过扇区级别的扫描找到分区信息。 2. **预览与选择恢复**:在扫描完成后,用户可以预览文件内容,确认是否为需要恢复...

    winpm 分区管理服务器版

    "WinPM 分区管理服务器版"是一款专为服务器环境设计的磁盘分区管理工具,它无需安装,可直接运行,极大地简化了系统管理员的工作流程。该软件提供了多种高级功能,帮助用户有效地管理和优化服务器的硬盘空间,提升...

    GHOST软件教程

    - **分区表**:了解主分区、扩展分区、逻辑分区和启动分区的区别及相互关系。 - **文件系统**:理解FAT32和NTFS文件系统,包括单个文件的最大值限制。 - **启动方式**:熟悉WIN98启动盘、双系统启动、U盘启动以及PE...

    论文研究-Space Partitioned AFDX Switch Design Based on Shared Memory Architecture.pdf

    基于共享内存架构的AFDX航空网络交换机设计是航空电子领域的重要研究课题,它针对新一代航空网络通信标准AFDX(Aviation Full Duplex Switched Ethernet)进行研究。AFDX是工业界特别是航空工业用于支持关键任务数据...

    分区恢复Partition Find and Mount Pro

    分区修复软件。本人在装Windows、Linux系统时不知怎么回事分区全部丢失,用了各种修复软件,Recovery Diskgen都不行,最后就是靠这个软件终于找出来了。找出来后可以挂载,然后就可以把内容拷贝出来了~!保证是分区...

    ghost系统磁盘分区及安装教程.pdf

    1. 分区备份:选择Local->Partion->To Image。首先选择要备份的硬盘和分区,然后指定镜像文件的保存位置和文件名。在空间不足时,可以选择压缩镜像文件,通常选择High以节省空间,但高压缩会增加备份时间。 2. 分区...

Global site tag (gtag.js) - Google Analytics