フルテキスト カタログを移動するには、次の手順を実行します。カタログの移動先の場所を指定する場合は、new_path/os_file_name ではなく、new_path だけを指定します。
-
次のステートメントを実行します。
ALTER DATABASE database_name SET OFFLINE
-
フルテキスト カタログを新しい場所に移動します。
-
次のステートメントを実行します。
logical_name は sys.database_files 中の name 列の値であり、new_path はカタログの新しい場所です。
ALTER DATABASE database_name MODIFY FILE ( NAME = logical_name , FILENAME = 'new_path')
-
次のステートメントを実行します。
ALTER DATABASE database_name SET ONLINE
また、CREATE DATABASE ステートメントの FOR ATTACH 句を使用してフルテキスト カタログを移動することもできます。次の例では、AdventureWorks データベースにフルテキスト カタログを作成しています。このフルテキスト カタログを新しい場所に移動するには、AdventureWorks データベースをデタッチし、フルテキスト カタログを物理的に新しい場所に移動します。その後、データベースをアタッチするときにフルテキスト カタログの新しい場所を指定します。
USE AdventureWorks;
CREATE FULLTEXT CATALOG AdvWksFtCat AS DEFAULT;
GO
USE master;
GO
--Detach the AdventureWorks database.
sp_detach_db AdventureWorks;
GO
--Physically move the full-text catalog to the new location.
--Attach the AdventureWorks database and specify the new location of the full-text catalog.
CREATE DATABASE AdventureWorks ON
(FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\AdventureWorks_Data.mdf'),
(FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\AdventureWorks_log.ldf'),
(FILENAME = 'c:\myFTCatalogs\AdvWksFtCat')
FOR ATTACH;
GO