将数据库从SQL Server 2000升级到2005 - 并重建全文索引?

时间:2008-09-06 21:51:53

标签: sql-server full-text-search recovery

我正在将 SQL Server 2000 数据库加载到我的新 SQL Server 2005 < EM>实例 即可。 正如预期的那样,全文目录不随附。 如何重建它们? < / p>

右键单击我的全文目录并点击“ 重建索引 ”只会挂起几个小时而不做任何事情,所以看起来并不那么简单...

2 个答案:

答案 0 :(得分:1)

使用SQL尝试。

以下是微软的一个例子。

--Change to accent insensitive
USE AdventureWorks;
GO
ALTER FULLTEXT CATALOG ftCatalog 
REBUILD WITH ACCENT_SENSITIVITY=OFF;
GO
-- Check Accentsensitivity
SELECT FULLTEXTCATALOGPROPERTY('ftCatalog', 'accentsensitivity');
GO
--Returned 0, which means the catalog is not accent sensitive.

答案 1 :(得分:0)

谢谢,这有帮助,因为它显示了错误:我的文件路径不同。以下是我修复它的方法:

1)从SQL 2000备份加载数据库

2)将兼容模式设置为SQL 2005

USE mydb
GO

ALTER DATABASE mydb SET COMPATIBILITY_LEVEL = 90
GO

3)获取文件组名称

SELECT name 
  FROM sys.master_files mf 
 WHERE type = 4 
   AND EXISTS( SELECT * 
                 FROM sys.databases db 
                WHERE db.database_id = mf.database_id 
                  AND name           = 'mydb')

4)然后为每个名字(我用一个小脚本做了)

ALTER DATABASE mydb 
MODIFY FILE( NAME = {full text catalog name}, FILENAME="N:\ew\path\to\wherever")

5)然后收集目录的所有“可读”名称:

SELECT name FROM sys.sysfulltextcatalogs

6)最后,现在你可以重建每一个:

ALTER FULLTEXT CATALOG {full text catalog name} REBUILD