SharePoint 2013 搜索报错"Unable to retrieve topology component health. This may be because the admin component is not up and running"
环境描述
Windows 2012 R2,SharePoint 2013(没有sp1补丁),sql server 2012
错误描述
搜索服务正常,但是爬网一直在Crawling Full,但是爬不到任何东西,而且不会停止,爬了一宿什么都没有爬到:
爬网不止,爬了一宿什么都没有爬到,错误如下:
去15/logs里面找日志; Non-OAuth request. IsAuthenticated=True, UserIdentityName=0#.w|domain\user, ClaimsCount=125 b5b2d49c-feb7-e08b-ecf7-28204da68508
UserAgent not available, file operations may not be optimized. at Microsoft.SharePoint.SPFileStreamManager.CreateCobaltStreamContainer(SPFileStreamStore spfs, ILockBytes ilb, Boolean copyOnFirstWrite, Boolean disposeIlb) at Microsoft.SharePoint.SPFileStreamManager.SetInputLockBytes(SPFileInfo& fileInfo, SqlSession session, PrefetchResult prefetchResult) at Microsoft.SharePoint.CoordinatedStreamBuffer.SPCoordinatedStreamBufferFactory.CreateFromDocumentRowset(Guid databaseId, SqlSession session, SPFileStreamManager spfstm, Object[] metadataRow, SPRowset contentRowset, SPDocumentBindRequest& dbreq, SPDocumentBindResults& dbres) at Microsoft.SharePoint.SPSqlClient.GetDocumentContentRow(Int32 rowOrd, Object ospFileStmMgr, SPDocumentBindRequest& dbreq, SPDocumentBindResults& dbres...
The crawler could not communicate with the server. Check that the server is available and that the firewall access is configured correctly.
事件查看器报错; WebHost failed to process a request. Sender Information: System.ServiceModel.ServiceHostingEnvironment+HostingManager/63363381 Exception: System.ServiceModel.ServiceActivationException: The service '/90ac4adbb96a4e89892b2ad7ab02da51/MetadataWebService.svc' cannot be activated due to an exception during compilation. The exception message is: The farm is unavailable.. ---> System.InvalidOperationException: The farm is unavailable. at Microsoft.SharePoint.Administration.Claims.SPSecurityTokenServiceManager.get_Local() at Microsoft.SharePoint.IdentityModel.SPServiceIssuerNameRegistry..ctor() at Microsoft.SharePoint.SPServiceHostOperations.Configure(ServiceHostBase serviceHost, SPServiceAuthenticationMode authenticationMode) at Microsoft.SharePoint.Taxonomy.MetadataWebServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses) at System.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath, EventTraceActivity eventTraceActivity) at System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(ServiceActivationInfo serviceActivationInfo, EventTraceActivity eventTraceActivity) at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath, EventTraceActivity eventTraceActivity) --- End of inner exception stack trace --- at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath, EventTraceActivity eventTraceActivity) at System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath, EventTraceActivity eventTraceActivity) Process Name: w3wp Process ID: 6004
解决方法
事件查看器错误,参考下面link解决,但是没有解决爬网的问题:
经过一天的挣扎,终于决定删掉搜索服务,重建!经过重建,发现报错更严重了,搜索主机控制服务连不上了;然后,查看搜索主机控制服务,发现和搜索服务运行账号不是一个,更新成一个以后,搜索服务正常了,爬网也没有问题了!
其他参考
解决过程中,发现其他人遇到过类似问题,跟自己原因不同,备注下面给大家一个参考;
http://blog.csdn.net/abrahamcheng/article/details/11216087
******************************************************************************
作者:霖雨 出处:http://www.cnblogs.com/jianyus 本文版权归 霖雨和博客园共有,欢迎转载,但请注明出处。