将数据库从SQL Server 2000升级到2005 –并重建全文本索引?
时间:2020-03-05 18:48:48 来源:igfitidea点击:
我正在将SQL Server 2000数据库加载到新的SQL Server 2005实例中。不出所料,全文目录没有随附。我该如何重建它们?
右键单击我的全文目录,然后单击"重建索引",它挂了好几个小时,却无所事事,因此看起来并不那么简单...
解决方案
回答
使用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)从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