帮助分类
常见问题
服务器/域名/数据库
备案
网络安全
云计算
其他问题
关于压缩和修复数据库的一些知识
数据库和普通文件不同,他是预增长的,而且删除数据时,数据库并不会变小,这个时候就需要通过压缩和修复数据库来完成。

1。预增长的概念(以MSSQL数据库为例,其他类同):
  假设一个数据库压缩后为20M
  在数据库中增加几条记录,你会发现大小变成了22M。(我们系统设置MSSQL数据库每次增加2M,ACCESS和MySQL也有增加幅度,但不一定是2M)
  如果再增加几条记录,你会发现数据库还是22M,并没有再变大。为什么呢?
  实际上,压缩后的数据库没有预留任何空间,所以当有新的数据写入的时候,他就需要分配新的空间(预留2M)。接下来,只要这个2M的预留空间还够用,数据库就不再变大,直到预留2M用完的时候再一次增长。

2。删除的概念:
  实际上,不管你删除多少数据,如果不进行压缩,那么数据库是不会变小的。
  数据库某记录删除以后,整个数据库大小虽然不变,但是数据库的预留空间却多起来了。
  假设一个数据库大小为20M,预留部分大小为1M。
  现在删除里面的10M数据,如果不进行压缩,那么数据库大小为20M,预留部分大小为11M。
  下次要一直到这个11M用完才会增长。

3。为什么要压缩修复数据库。
  根据上面的道理,很容易知道,数据库在频繁的添加删除后,整个数据库的记录是非常杂乱的,而且可能预留的空间会很大。压缩修复数据库能重新整理数据库空间,重新排放数据库记录,这会大大提高数据库的执行效率。
  另外数据库在运行的过程中可能会发生错误,或者产生数据库不完整(尤其是对于ACCESS数据库,MSSQL和MySQL基本不会)。这个时候也需要进行修复。

4。如何压缩和修复我的数据库
  对于ACCESS:
  下载数据库文件[如果是.asp的扩展名,请改为.mdb的扩展名],用Microsoft Access打开数据库,
  选择工具--数据库实用工具--压缩和修复数据库--[改回.asp的扩展名]--上传覆盖原来数据库文件.