将数据库从 SQL Server 2000 升级到 2005 — 并重建全文索引?
-
09-06-2019 - |
题
我正在加载一个 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
不隶属于 StackOverflow