我有一个包含大约200万条记录的表,所有记录都是针对同一节点的。我无法根据日期进行分区,因为每天都会不断插入和删除数据。
其余数据采用字符串格式。
应用程序每15分钟从此表中获取备份(仅收集15分钟内收集的部分数据);执行此操作时,表已锁定且无法访问。
我可以使用哪种分区来帮助解决这个问题?
答案 0 :(得分:0)
如果您尝试解决的问题是备份锁定,则分区无法帮助您解决问题。
此外,还有更好的解决方案可以避免在备份期间锁定。无论是否有分区表,这些解决方案都能很好地工作。
如果使用InnoDB表(which you should),则可以使用事务隔离而不是锁定来转储数据。
let rec x x=x+x in x 2;;
:-int=2
阅读手册以获取更多信息:https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html
您还可以使用Percona XtraBackup创建物理备份而不是数据转储。这也取决于使用InnoDB表。 Percona XtraBackup是免费软件。