我的数据库有50G,数据库是SqlServer2000随着数据的不断增加,而且可能磁盘I/0 读取变慢,我想把这 50G数据 按 25G划分,保存在不同的硬盘里面。Sqlserver2000 里面有这种可以划分数据库的功能吗?具体操作方法是?
解决马上给分。谢谢。

解决方案 »

  1.   

    尝试分区吧.SQL分区表http://blog.csdn.net/pt1314917/archive/2009/08/11/4435083.aspx
      

  2.   

    分区视图 
    分区视图是提高查询性能的一个很好的办法 
    --看下面的示例 --示例表 
    create table tempdb.dbo.t_10( 
    id int primary key check(id between 1 and 10),name varchar(10)) create table pubs.dbo.t_20( 
    id int primary key check(id between 11 and 20),name varchar(10)) create table northwind.dbo.t_30( 
    id int primary key check(id between 21 and 30),name varchar(10)) 
    go --分区视图 
    create view v_t 
    as 
    select * from tempdb.dbo.t_10 
    union all 
    select * from pubs.dbo.t_20 
    union all 
    select * from northwind.dbo.t_30 
    go --插入数据 
    insert v_t select 1 ,'aa' 
    union  all select 2 ,'bb' 
    union  all select 11,'cc' 
    union  all select 12,'dd' 
    union  all select 21,'ee' 
    union  all select 22,'ff' --更新数据 
    update v_t set name=name+'_更新' where right(id,1)=1 --删除测试 
    delete from v_t where right(id,1)=2 --显示结果 
    select * from v_t 
    go --删除测试 
    drop table northwind.dbo.t_30,pubs.dbo.t_20,tempdb.dbo.t_10 
    drop view v_t /**//*--测试结果 id          name      
    ----------- ---------- 
    1          aa_更新 
    11          cc_更新 
    21          ee_更新 (所影响的行数为 3 行) 
    ==*/ 
      

  3.   

    只能做raid来解决,否则需要采用加文件组(文件),将文件组内的文件指定的不同的磁盘,而且还需要将表重新生成到新的文件组上。如果有条件,raid是最简单的解决方案。 多文件组是最麻烦但是最省钱方案。