標籤:
前言
配置SharePoint 2016的設定精靈中,第三步建立設定資料庫報錯,然後百度、Google了一下,都沒有解決,自己看日誌搞定,也許會有人遇到類似問題,分享一下。
1、設定精靈的錯誤,如:
2、根據找到錯誤記錄檔,日誌裡的詳細資料,如下:
Failed to create the configuration database.An exception of type System.Xml.Schema.XmlSchemaException was thrown. Additional exception information: Feature definition with Id ca7bd552-10b1-4563-85b9-5ed1d39c962a failed validation, file ‘fieldswss4.xml‘, line 68, character 9:The ‘ListInternal‘ attribute is not allowed.System.Xml.Schema.XmlSchemaException: Feature definition with Id ca7bd552-10b1-4563-85b9-5ed1d39c962a failed validation, file ‘fieldswss4.xml‘, line 68, character 9:The ‘ListInternal‘ attribute is not allowed. ---> System.Xml.Schema.XmlSchemaValidationException: The ‘ListInternal‘ attribute is not allowed. --- End of inner exception stack trace --- at Microsoft.SharePoint.Administration.SPElementManifest.ElementXmlValidationCallBack(Object sender, ValidationEventArgs evtargs) at System.Xml.Schema.XmlSchemaValidator.SendValidationEvent(String code, String arg) at System.Xml.Schema.XmlSchemaValidator.ValidateAttribute(String lName, String ns, XmlValueGetter attributeValueGetter, String attributeStringValue, XmlSchemaInfo schemaInfo) at System.Xml.Schema.XmlSchemaValidator.ValidateAttribute(String localName, String namespaceUri, XmlValueGetter attributeValue, XmlSchemaInfo schemaInfo) at System.Xml.XsdValidatingReader.ValidateAttributes() at System.Xml.XsdValidatingReader.ProcessElementEvent() at System.Xml.XsdValidatingReader.Read() at System.Xml.XmlReader.MoveToContent() at System.Xml.XmlReader.IsStartElement() at Microsoft.SharePoint.Utilities.SPUtility.XsdValidateXml(XmlTextReader xmlStreamReader, String friendlyName, String pathXsdFile, String tagExpectedRootNode, Int32 desiredPathVersion, ValidationEventHandler xsdValEventHandler) at Microsoft.SharePoint.Administration.SPElementManifest.ValidateDefinition(String pathToFeatureAndElementManifestXsdFile) at Microsoft.SharePoint.Administration.SPFeatureDefinition.ValidateElementManifestXml(String pathToFeatureAndElementManifestXsdFile) at Microsoft.SharePoint.Administration.SPFeatureDefinition.ValidateDefinition(String pathToFeatureAndElementManifestXsdFile) at Microsoft.SharePoint.Administration.SPFeatureDefinitionCollection.AddCore(SPFeatureDefinition featdef, SPSite site, String solutionHash, Boolean fForce, Boolean fDoValidation, String pathToFeatureAndElementManifestXsdFile) at Microsoft.SharePoint.Administration.SPFarmFactory.EnsureOutOfBoxFeaturesInstalled(SPFarm farm, String[] rgsOutOfBoxFeatures, Int32 compatibilityLevel) at Microsoft.SharePoint.Administration.SPFarmFactory.CreateBasicServices(SPFarm farm) at Microsoft.SharePoint.Administration.SPFarmFactory.Create() at Microsoft.SharePoint.Administration.SPFarm.Create(SqlConnectionStringBuilder configurationDatabase, SqlConnectionStringBuilder administrationContentDatabase, SqlConnectionStringBuilder siteMapDatabase, IdentityType identityType, String farmUser, SecureString farmPassword, SecureString masterPassphrase) at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.CreateOrConnectConfigDb() at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.Run() at Microsoft.SharePoint.PostSetupConfiguration.TaskThread.ExecuteTask()
3、找到fieldswss4這個檔案,如:
4、用vs開啟fieldswss4這個檔案,發現確實有這個屬性,而且是有報錯提醒的,如:
5、在SharePoint 2013環境中找到如下位置,發現也有類似檔案,如:
6、對比了一下SharePoint 2013和SharePoint 2016版本的這個報錯檔案,發現SharePoint 2016多了如下幾個Field:
-
- SMTotalSize
- SMLastModifiedDate
- SMTotalFileStreamSize
- SMTotalFileCount
7、把這四個Field的ListInternal屬性刪掉,然後再回合組態嚮導,發現運行成功,如:
總結
其實自己也不太清楚這個檔案的作用,查了一下也沒查到詳細說明;不過刪掉ListInternal屬性確實可以成功回合組態嚮導,我想如果真的有問題,運行成功以後再還原回來也是可以的(修改之前已備份),不會影響SharePoint的運行。
當然,有知道這個檔案作用的,歡迎留言告知,多謝!
相關錯誤
也看到有遇到一樣錯誤的情況,但是因為記憶體不足,跟自己的情況不符,附後參考吧。
http://fangdahai.blogspot.hk/2016/05/invalid-feature-definition-error-during.html
SharePoint 2016 設定精靈報錯 - The 'ListInternal' attribute is not allowed