日期:2014-05-17  浏览次数:20817 次

咨询个删除数据的问题。
我有个历史数据数据库,大约500万数据。访问速度太慢了,我用条件delete300万数据后,数据访问没有太大变化。

我是不是应该 alter table 表名 move 一下,

我是新手,不知道该怎么处理一下,提高访问速度。


以前的全部删除时候,我用alter table 表名 move 一下就可以提高访问速度。

现在没有完全删除数据,不知道能不能用这个语句。

------解决方案--------------------
为数据库建索引,分区。
------解决方案--------------------
对你那张历史表创建个索引试试,适当的建立索引会提高查询速度。

简单的索引
在表上创建一个简单的索引。当我们省略关键词 UNIQUE 时,就可以使用重复的值。
CREATE INDEX 索引名称
ON 表名称 (列名称)


------解决方案--------------------
感觉move不能消除表的碎片
做以下的操作试试
CREATE TABLE 表名_back AS SELECT * FROM 表名;
TRUNCATE TABLE 表名;
INSERT INTO 表名 SELECT * FROM 表名_back;
DROP TABLE 表名_back;
------解决方案--------------------
SQL code
alter table 表名 move

------解决方案--------------------
是不是表空间不不大了造成的。
------解决方案--------------------
重新创建一下索引。
你的大表最好创建分区。
------解决方案--------------------
分区 索引 这两个关键词