同事问我: 比如从数据库服务器a(装的是SQLServer2000)直接拷贝数据库文件到数据库服务器b(装的也是SQLServer2000)上使用吗? 我的看法是可能不行,当然可以测试一下。我想关键在于
那个数据库文件是怎样组织的,比如数据库文件含有了服务器名,那么数据库服务器a的数据库文件在 数据库服务器b肯定是不能识别的。

解决方案 »

  1.   

    借地一用, 在创建函数过程, set @int=(select convert(int,rand()*100))
    会提示说在函数内不正确地使用了 'rand'。要怎么用。
      

  2.   

    不明白楼主是什么意思?数据库文件是独立的,跟服务器无关吧,把库的mdf和ldf文件拷到另一机子,是可以用的。
      

  3.   

    在b服务器上附加一下复制过来的a服务器上的数据库文件(mdf和ldf文件)就可以用了.
      

  4.   

    hufeili(以琳) ( ) 信誉:100    Blog  2006-10-13 19:23:00  得分: 0  
     
     
       楼上的那位,我运行了你的代码,没有问题呀。
      
     
    我的是sql2000
      

  5.   

    quote:数据库文件是独立的,跟服务器无关吧    是不是所有的数据库文件都是这样的呢?
      

  6.   

    只要拷贝*.mdf和*.ldf就行了.
    EXEC sp_attach_db @dbname = N'pubs', 
       @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf', 
       @filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'
      

  7.   

    我再详细解释一下我的意思:
       比如我把服务器a上的sqlserver2000的data文件夹(装有数据库文件)的所有文件复制到u盘,然后把u盘的文件复制到服务器b上的sqlserver2000的data文件夹.服务器b上的sqlserver2000能不能识别这些新文件。   还有就是所有的数据库系统都允许这样操作呢?
      

  8.   

    sql server 可以,只要附加上就可以了
    别的数据库系统不一定
      

  9.   

    很显然会有问题嘛LZ的意思是所有的数据库数据都直接COPY过去。那MASTER肯定也被COPY了
    放到另外一台机器上能行吗?(我估计不行,没测试过,master肯定存了和机器相关的信息啊)
    如果说单独一个用户数据库,当然没问题了
      

  10.   

    不能直接copy用“备份--还原“来实现吧
      

  11.   

    可以 sql server2000 中企业管理器 中找到你要的数据库然后点击右键 所有任务的“分离数据库”
     然后再找到数据库的安装目录 找到MSSQL/data有你要的数据库文件拷到你要使用的数据库就可以了 然后用同样的方法“附加数据库”就可以了