情况大致是这样:
有两张表大概300W条记录,需要频繁的select,insert,update
每天要生成一张新表,并插入记录120W条左右,只执行select操作,这些表需要保存一年以上
服务器2G内存,双至强超线程2.8gCPU现在的问题是:1,如果同时读写两张300W的表时,反应缓慢
2,因为保存的表比较多,数据库已经占用了200G的空间,硬盘都快满了请高手指点该怎么解决这两个问题?

解决方案 »

  1.   

    TRUNCATE TABLE
    删除表中的所有行,而不记录单个行删除操作。 语法
    TRUNCATE TABLE name
    ---但是此条语句不记入日志哦
      

  2.   

    DBCC SHRINKDATABASE
    收缩指定数据库中的数据文件大小
    DBCC SHRINKFILE
    收缩相关数据库的指定数据文件或日志文件大小。
      

  3.   

    增加硬件投入,多挂几个硬盘吧。假定物理磁盘个数为N,创建N个文件组,并把频繁访问的两个大表分别分成N个小表,每一组两个表分别创建到不同的文件组,通过分区视图关联。