SQL Server 2005:使用带有全文目录的sp_attach_db附加数据库

时间:2010-10-25 21:32:37

标签: sql sql-server database sql-server-2005

在SQL Server 2005 SP3中使用“sp_attach_db”命令将数据库和完整文本目录从服务器A附加到服务器B时出现问题。所有数据库文件(数据,日志,全文目录)都已从服务器A复制到服务器B.我猜这确实是可能的,我的语法不正确,但我似乎无法找到任何示例或任何地方的好文件。这是我正在使用的一些伪语法...

exec sp_attach_db '<database_name>', '<database data file>', '<database full text catalog folder>', '<database log file>'

或某种例子......

exec sp_attach_db 'database', 'C:\Database\Data\database_data.mdf', 'C:\Database\Data\FTData', 'C:\Databases\Logs\database_log.ldf'

我从此命令收到“无法打开物理文件”的错误,并且attach命令失败。如果我从sp_attach_db命令中删除了全文目录文件夹,则数据库会挂载,但会向我发出警告,指出它找不到全文目录。我错过了什么!?

1 个答案:

答案 0 :(得分:2)

使用CREATE DATABASE ... FOR ATTACH;。见例H:

  

附加有的全文目录   被感动
  以下示例   附上全文目录   AdvWksFtCat随之而来   AdventureWorks2008R2数据和日志   文件。在这个例子中,全文   目录从其默认值移出   位置到新位置   C:\ myFTCatalogs。数据和日志   文件保持默认状态   位置。

USE master;
GO
--Detach the AdventureWorks2008R2 database
sp_detach_db AdventureWorks2008R2;
GO
-- Physically move the full text catalog to the new location.
--Attach the AdventureWorks2008R2 database and specify the new location of the full-text catalog.
CREATE DATABASE AdventureWorks2008R2 ON 
    (FILENAME = 'c:\...\Data\AdventureWorks2008R2_Data.mdf'), 
    (FILENAME = 'c:\...\Data\AdventureWorks2008R2_log.ldf'),
    (FILENAME = 'c:\myFTCatalogs\AdvWksFtCat')
FOR ATTACH;
GO