MDS Sürümü Doğrula komutu SQL Server 2012 ve SQL Server 2014'te sunucu hatasıyla başarısız oluyor
Bu makale, Ana Veri Hizmetleri (MDS) Sürümü Doğrula komutunun SQL Server 2012 ve SQL Server 2014'te sunucu hatasıyla başarısız olduğu sorunu çözmenize yardımcı olur.
Orijinal ürün sürümü: SQL Server 2012, SQL Server 2014
Özgün KB numarası: 2711671
Belirtiler
Aşağıdaki senaryoyu inceleyin:
Yönetici Microsoft SQL Server 2012 veya SQL Server 2014 MDS'yi yükler ve ardından yeni bir uygulama havuzu hesabı kullanarak MDS web sitesini dağıtır.
Daha sonra MDS web sitesine göz atacak ve ardından şu adımları izleyeceksiniz:
Sürümleri Yönet sayfasına tıklayın.
Üst araç çubuğunda Sürümü Doğrula komutuna tıklayın.
Model için Doğrula onay kutusunu seçersiniz.
Bu sürümü doğrulamak istediğinizden emin misiniz? istemini onaylayıp Tamam'a tıklayın.
Bu senaryoda, tarayıcı penceresinde aşağıdaki hata iletisini alırsınız:
'/' Uygulamasında Sunucu Hatası.
'ValidationGetRequest' ileti isteği türü işlenirken bir hata oluştu. Daha fazla bilgi için özel durum ayrıntılarına bakın.
Açıklama: Geçerli web isteğinin yürütülmesi sırasında işlenmeyen bir özel durum oluştu. Hata ve kodun kaynağı hakkında daha fazla bilgi için lütfen yığın izlemesini gözden geçirin.
Özel Durum Ayrıntıları: Microsoft.MasterDataServices.WebUI.ServiceAdapterException: 'ValidationGetRequest' ileti isteği türü işlenirken bir hata oluştu. Daha fazla bilgi için özel durum ayrıntılarına bakın.
Kaynak Hatası:
Geçerli web isteğinin yürütülmesi sırasında işlenmeyen bir özel durum oluşturuldu. Özel durumun kaynağı ve konumuyla ilgili bilgiler aşağıdaki özel durum yığını izlemesi kullanılarak tanımlanabilir.
Yığın İzleme:
[ServiceAdapterException: 'ValidationGetRequest' ileti isteği türü işlenirken bir hata oluştu. Daha fazla bilgi için özel durum ayrıntılarına bakın.]
Microsoft.MasterDataServices.WebUI.ServiceAdapter.InspectResponseForErrors(MessageRequest isteği, MessageResponse yanıtı) +687
Microsoft.MasterDataServices.WebUI.ServiceAdapter.ExecuteRequest(MdmServiceOperation 2 işlemi, TRequestType isteği) +75
Microsoft.MasterDataServices.WebUI.ServiceAdapter.GetValidationStatus(Int32 versionInternalId, Null atanabilir 1 entityInternalId, Nullable 1 memberType, String notificationUserName, IList 1 memberIds, Boole omitSummary, Boolean omitIssuesList, Int32 pageNumber, Int32 pageSize, String sortColumn, SortDirection sortDirection) +678
Microsoft.MasterDataServices.WebUI.ServiceAdapter.GetValidationStatus(Int32 versionInternalId, Int32 pageNumber, Int32 pageSize, String sortColumn, SortDirection sortDirection) +133
Microsoft.MasterDataServices.WebUI.Common.Validations.LoadGrid() +355
Microsoft.MasterDataServices.WebUI.Audit.Dimensions.LoadGrid() +26
Microsoft.MasterDataServices.WebUI.Audit.Dimensions.EvaluateSelectedVersion() +267
Microsoft.MasterDataServices.WebUI.Audit.Dimensions.OnLoad(EventArgs e) +776
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boole includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3064
Not
Özel bir Microsoft .NET Framework uygulaması ValidationGetRequest MDS API sınıfını kullandığında da benzer bir sorun oluşabilir. Bu sorun şu konuda belgelenmiştir: ValidationGetRequest Sınıfı.
Neden
Yeni hesaplara izin verilmediğinden VIEW SERVER STATE
bu sorun oluşur.
MDS web sitesi oluşturmak için Master Data Services Yapılandırma Yöneticisi yardımcı programını kullandığınızda, araç sizden uygulama havuzu kimliği için uygulama havuzu kullanıcı hesabı kimlik bilgilerini ister.
Ardından, MDS sunucusu ve veritabanı seçildikten sonra araç hesaba izin verir. Belirtilen uygulama havuzu kimlik bilgisi hesabına belirtilen MDS veritabanında çeşitli izinler verilir ve yerel kullanıcılar grubuna MDS_ServiceAccounts
ve mds_exec
belirtilen MDS veritabanı kataloğundaki veritabanı rolüne eklenir.
Ancak, VIEW SERVER STATE
izin ana veritabanına verilmez. Bazen Windows hesapları SQL Server bu izne sahip olabilir. Ancak, varsayılan olarak yeni hesaplara bu izin verilmez.
İzin, VIEW SERVER STATE
kuyruğa alınan arka plan etkinliğinin ilerleme durumunu denetlemek için dinamik yönetim görünümünü (DMV) kullanarak sys.dm_broker_activated_tasks
hizmet aracısını sorgulamak için yararlıdır.
MDS web uygulaması, doğrulama ilerleme durumunu denetlemek için exec mdm.udpValidationIsRunning
saklı yordamını dahili olarak çalıştırır. Ancak, sorguyu çalıştıran uygulama havuzu kimlik bilgilerinin DMV üzerinde izinleri yoktur ve aşağıdaki hata iletisini alır:
Kullanıcının bu eylemi gerçekleştirme izni yok.
Yordamın içindeki aşağıdaki deyim başarısız olur ve web sayfası işlenmez:
IF EXISTS (SELECT 1 FROM sys.dm_broker_activated_tasks
WHERE procedure_name = N'[mdm].[udpValidationQueueActivate]')
Geçici Çözüm
Bu sorunu geçici olarak çözmek için sistem yöneticisi sabit sunucu rolünün üyesi olan bir hesabı kullanarak MDS uygulama havuzunu çalıştırmak üzere belirlenen hesaba el ile izin verin.
Örneğin, izinleri el ile vermek için aşağıdaki komutları çalıştırın:
USE Master;
GO
GRANT VIEW SERVER STATE TO <domain\MdsWebAppAccount>;
Not
domain\MdsWebAppAccount yer tutucusu<>, yapılandırmanız için doğru hesabı temsil eder.
Daha fazla bilgi
Bu sorunun izinle VIEW SERVER STATE
ilgili olup olmadığını belirlemek için bir SQL Profiler izlemesi çalıştırın ve neden bölümünde açıklandığı gibi deyimleri çalıştırdığınızda aşağıdaki hata iletisini arayın:
Kullanıcının bu eylemi gerçekleştirme izni yok.
Ardından, etkin izinler için hesabı denetleyin ve gerekirse izinleri ekleyin. Bunu yapmak için şu adımları uygulayın:
Management Studio'yu açın ve MDS kataloğunu barındıran SQL Server veritabanı altyapısına bağlanın.
Nesne Gezgini bölmesinde Güvenlik klasörünü genişletin.
IIS MDS uygulama havuzunu çalıştırmak için kullanılan hesabı bulun.
Hesaba sağ tıklayın ve ardından Özellikler'e tıklayın.
Securables sayfasına tıklayın. Alt bölmede Etkili sekmesine tıklayın.
Etkin izin
VIEW SERVER STATE
listeleniyorsa, sorun büyük olasılıkla bu değildir.İzin listelenmiyorsa, Oturum Açma Özellikleri iletişim kutusundaki Açık sekmesine dönün ve ardından hesaba izin vermek için Sunucu Durum İzinlerini Görüntüle onay kutusunu tıklayarak seçin.
Başvurular
Verileri doğrulamak için Ana Veri Yöneticisi web uygulamasını kullanma hakkında daha fazla bilgi için bkz:
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin