我需要删除拥有17亿条记录的庞大数据库表。
数据库:Sybase,数据库大小:350 gb。
我跑了'drop table'声明并且花了超过18个小时。 还有其他方法可以优化它。
答案 0 :(得分:1)
此帖太大而无法发表评论。如果它没有帮助我将删除它。我在sybase论坛上发现了以下内容,即确保删除了所有外键等。
http://nntp-archive.sybase.com/nntp-archive/action/article/%3C4a3b0950.27df.1681692777@sybase.com%3E
P.S。我发现了一种能够持续加快工作速度的工作方式 view drops:首先从数据库中删除FOREIGN KEYS。我的剧本 丢弃表和视图以前需要5个小时(约20秒) 丢弃每个对象);如果首先丢弃FK,它将在20年结束 分钟。
他们为整个数据库做了这件事,你需要为相关的表做这件事,我不确定这会有所帮助,因为这里的文档
实际上说外键等会自动丢弃在引用您正在删除的表中的表中。虽然它没有提到当你调用drop时这些键当前是正在运行的事务的一部分会发生什么。