1,背景:某些情况下需要清理线上的大表。
如果设置了分区表的归档日志表,需要删除指定日期前的数据,直接truncate 或者drop table 可能造成所在服务器的IO吃满,进而影响线上业务。这里我们介绍采用硬链接的方式进行删除大表
2,解决方案
这里需要利用了linux中硬链接的知识,来进行快速删除。
所谓的硬链接,就是不止一个文件名
指向node Index
,有好几个文件名
指向node Index
。
假设,这会又有一个文件名
指向上面的node Index
,即
这个时候,你做了删除文件名(1)
的操作,linux系统检测到,还有一个文件名(2)
指向node Index
,因此并不会真正的把文件删了,而是把步骤(2)
的引用给删了,这步操作非常快,毕竟只是删除引用。于是图就变成了这样<