SQL Server 2005: присоединение базы данных с помощью sp_attach_db с полнотекстовым каталогом - PullRequest
1 голос
/ 26 октября 2010

Проблемы с подключением базы данных и полнотекстового каталога с сервера A к серверу B с помощью команды sp_attach_db в SQL Server 2005 с пакетом обновления 3 (SP3).Все файлы базы данных (данные, журнал, полнотекстовый каталог) были скопированы с сервера 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'

Я получаю сообщение об ошибке «Невозможно открыть физический файл»"из этой команды и команда присоединения завершается неудачно.Если я удаляю папку полнотекстового каталога из команды sp_attach_db, база данных монтируется, но предупреждает, что не может найти полнотекстовый каталог.Чего мне не хватает!?

1 Ответ

2 голосов
/ 26 октября 2010

Использование 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...