Sql Server全文索引的迁移

数据库 SQL Server
Sql Server全文索引可以提高数据库的查询效率,下面就让我们一起了解一下Sql Server全文索引的迁移方法,供您参考。

Sql Server全文索引大家都经常用的到,下面为您介绍的是Sql Server全文索引的迁移方法,如果您对Sql Server全文索引的话,不妨一看。

备份数据库时候,如果数据库中的某些表上包含全文索引,全文索引也会备份进去。当我们利用该备份在另外一台服务器恢复数据库的时候,全文索引信息也会恢复到新的数据库中去,但是全文目录并不会被恢复过来,这样就会导致全文目录无法正常使用,这个时候当我们进行目录填充的时候就会出现读取索引目录失败的提示,遇到这种情况,可以用以下下几种方法去处理。

1 若新服务器磁盘中存在全文目录路径对应的驱动器同时旧的全文目录目录也有备份,可以直接将备份的目录复制服务器对应的目录,重新启动Ms Search服务然后填充即可。

2 若新服务器磁盘中存在全文目录路径对应的驱动器同时旧的全文目录也没有备份,此时只能在全文目录对应的位置新建一个空白的目录(文件夹),然后重建全文索引或者删除全文索引后重建即可恢复。

3 当全文目录对应的驱动器不存在时将无法在全文索引目录对应的位置处新建目录或将旧的目录转移到该位置,同时也会出现无法删除索引也无法重建索引的状况,此时就只能将全文索引目录对应的磁盘驱动器修改为已有的磁盘,然后新建对应目录或者将旧的目录转移到该位置。

全文索引的目录信息保存在对应数据库的系统表sysfulltextcatalogs中,name字段为全文索引所在的表名称,path字段为该索引对应的索引目录路径,默认情况下用户将不被授权修改该字段的值,打开查询分析器依次执行以下语句:
 
exec sp_configure 'allow updates', 1   --授权更新系统表
RECONFIGURE WITH OVERRIDE  --让权限生效

此时就可以修改路径了,执行以下语句更新对应表的全文索引目录路径为已有的驱动器路径:

update sysfulltextcatalogs set path='e:\catlog' where name='test'

接下来按照步骤1或者2恢复全文索引即可。注:执行完之后一定要重启Ms Search服务后再进行目录填充,否则将无法完成填充。

 

 

 

【编辑推荐】

SQL Server删除用户失败的解决方法

SQL Server备份恢复的两种方法

SQL Server级联删除的实现

SQL Server删除表的外键约束

SQL Server Agent服务

责任编辑:段燃 来源: 互联网
相关推荐

2011-08-30 13:54:29

SQL Server全文索引

2010-07-22 09:42:47

SQL Server

2011-04-18 11:00:12

SQL Server全文索引

2010-11-10 14:06:44

SQL Server全

2010-07-22 09:33:45

SQL Server全

2010-10-20 11:07:21

sql server全

2010-09-27 11:42:44

SQL全文索引

2011-04-02 13:21:34

SQL Server数据库全文索引

2010-07-22 09:14:51

SQL Server全

2010-07-22 09:57:17

Microsoft S

2010-09-27 11:29:36

SQL全文索引

2011-05-13 14:34:31

Oracle全文索引设置

2010-05-28 11:14:39

MySQL全文索引限制

2022-09-07 08:16:09

MySQL索引

2009-04-22 14:19:32

Oracle中文索引基础

2010-10-26 16:54:16

oracle全文索引

2010-05-27 14:27:30

MySQL全文索引

2010-10-12 14:27:57

mysql全文索引

2010-11-10 14:18:15

SQL SERVER全

2010-10-20 10:55:54

SQL Server全
点赞
收藏

51CTO技术栈公众号