由于程序错误,导致表数据膨胀到4000W条左右,其中90%是重复数据。
该如何去重这些重复数据?数据量太大,一般的SQL根本没法搞定。
数据库是MYSQL5.1

解决方案 »

  1.   

    其中90%是重复数据。如果这样,建议重新生成一张表new_table,然后把原表删除,再把new_table 改成原表。可以在新表中设置主键,然后用CURSOR逐条处理原表记录插入到新表。
      

  2.   


    我目前正在用存储过程这样处理,但发现那张表数据量太大了,SHOW PROCESSLIST查看下一直都是在Sending data
      

  3.   

    怎么叫一般的SQL语句根本没法搞定? 你发出你的表结构以及记录示例出来!
      

  4.   

    4000w,distinct一下需要多久?distinct形成新表即可,删个什么劲?