优化丢弃大数据库表的方法

时间:2015-02-04 20:40:19

标签: database sybase sql-drop

我需要删除拥有17亿条记录的庞大数据库表。

数据库:Sybase,数据库大小:350 gb。

我跑了'drop table'声明并且花了超过18个小时。 还有其他方法可以优化它。

1 个答案:

答案 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年结束   分钟。

他们为整个数据库做了这件事,你需要为相关的表做这件事,我不确定这会有所帮助,因为这里的文档

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36272.1570/html/commands/X58548.htm

实际上说外键等会自动丢弃在引用您正在删除的表中的表中。虽然它没有提到当你调用drop时这些键当前是正在运行的事务的一部分会发生什么。