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

问题描述 投票:0回答:2

我正在将SQL Server 2000数据库加载到我的新SQL Server 2005实例中。正如预期的那样,全文目录不附带它。我怎样才能重建它们?

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

sql-server full-text-search recovery
2个回答
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.

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
© www.soinside.com 2019 - 2024. All rights reserved.