Expirarea se produce atunci când importați fișiere mari particularizare în Microsoft Dynamics CRM

Important Acest articol conține informații despre modificarea valorilor de registry. Asigurați-vă că o copie de rezervă înainte de a o modifica. Asigurați-vă că știți să restaurați registry dacă apare o problemă. Pentru mai multe informații despre cum să creați copii de rezervă, restaurarea și modificarea registry, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:

256986 Descrierea registry din Microsoft Windows

Simptome

Atunci când importați fișiere mari particularizare în Microsoft Dynamics CRM 3.0 sau în Microsoft Dynamics CRM 4.0, se produce o expirare. În plus, primiți unul dintre următoarele mesaje de eroare.

Mesaj de eroare 1

Importați erori de expirare.


Mesaj de eroare 2

Lungimea maximă solicitare a depășit.

Mesaj de eroare 3

Fișierul nu poate fi încărcat sau importul nu a reușit

Mesaj de eroare 4

Acest lucru nu este un fișier valid particularizare. Vă rugăm să utilizaţi un. Fișier XML care a fost generat de exportul particularizările.

Dacă valoarea DevErrors este setată la "Pe" în fișierul Web.config, primiţi următorul mesaj de eroare:

Microsoft CRM platformă raport de eroare:


Eroare Descriere: Expirare a expirat


Eroare detalii: Detalii despre această eroare nu au fost furnizate de platformă.


Număr eroare: 0x80040E31

În plus, când faceți upgrade unei baze de date Microsoft CRM mare din Microsoft Business Solutions - 1.2 CRM pentru Microsoft Dynamics 3.0 sau de la Microsoft Dynamics CRM 3.0 la Microsoft Dynamics CRM 4.0, este posibil să primiți următorul mesaj de eroare:

09:54:25 | Eroare | Instalați excepție. System.Exception: Acțiune Microsoft.Crm.Setup.Server.InstallDatabaseAction nereușită. ---> System.Data.SqlClient.SqlException: expirare a expirat. Expirarea perioadei de expirare înainte de terminarea operațiunii sau serverul nu răspunde. System.Data.SqlClient.SqlCommand.ExecuteNonQuery() la Microsoft.Crm.Setup.DatabaseInstaller.DatabaseUtility.ExecuteSql (InstallDatabase bazei de date, String sql, Int32 timeout) la Microsoft.Crm.Setup.DatabaseInstaller.SqlScriptAction.Execute() la Microsoft.Crm.Setup.DatabaseInstaller.DatabaseInstaller.Install (Int32 languageCode, șir de fișier, Boolean upgrade) la Microsoft.Crm.Setup.Server.InstallDatabaseAction.Do (IDictionary parametrii) la Microsoft.Crm.Setup.Common.Action.ExecuteAction (acțiune acțiune, IDictionary parametri, Boolean anulare)---sfârșitul inner exception stack trace---la Microsoft.Crm.Setup.Common.Action.ExecuteAction (acțiune acțiune, IDictionary parametri, Boolean anulare) la Microsoft.Crm.Setup.Common.Installer.Install (IDictionary stateSaver) la Microsoft.Crm.Setup.Server.DatabaseInstaller.Install (IDictionary stateSaver) la Microsoft.Crm.Setup.Common.ComposedInstaller.InternalInstall (IDictionary stateSaver) la Microsoft.Crm.Setup.Common.ComposedInstaller.Install (IDictionary stateSaver) la Microsoft.Crm.Setup.Server.ServerSetup.Upgrade (IDictionary date) la Microsoft.Crm.Setup.Server.ServerSetup.Run()

Cauza

Această problemă apare deoarece este adevărată una dintre următoarele condiții:

  • Ora care este utilizat pentru importul fișierelor de particularizare sau upgrade-ul Microsoft Business Solutions - CRM depășește OLEDBTimeout valoarea implicită în Microsoft Dynamics CRM pentru computer care execută Microsoft SQL Server.

  • În momentul în care este utilizat pentru importul fișierelor de particularizare sau pentru upgrade-ul Microsoft CRM depășește valoarea ExtendedTimeout care este utilizat pentru operațiuni de execuție lungă.

    Notă Intrarea de registry ExtendedTimeout pe serverul Microsoft Dynamics CRM nu trebuie setată la o valoare mai mare de 2,147,483,647. Care este valoarea maximă care poate utiliza intrarea de registry ExtendedTimout.

    Notă Importul fișierelor de particularizare poate fi o operațiune de execuție lungă.

  • Dimensiunea fișierului Customization.xml este mai mare de 7.5 megaocteți (MO).

    Note

    • Fișierul Customization.xml este creat atunci când exportați entități particularizate.

    • În mod implicit, Microsoft ASP.NET limitează dimensiunea solicitarea HTTP la 8 MB.

Rezolvare

Pentru a rezolva această problemă, utilizați una sau mai multe dintre următoarele metode.

Metoda 1: Adăugarea OLEDBTimeout și ExtendedTimeout subcheile de registry pentru a crește valorile pentru expirare

Avertisment Pot apărea probleme grave dacă modificați incorect registry utilizând Registry Editor sau altă metodă. Aceste probleme pot necesita reinstalarea sistemului de operare. Microsoft nu poate garanta că aceste probleme pot fi remediate. Modificați registry pe propriul risc.

  1. Faceți clic pe Start, faceți clic pe executare, tastați regedit, și apoi faceți clic pe OK.

  2. Identificați următoarea subcheie de registry:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM

  3. Faceți clic dreapta pe MSCRM, indicați spre nouși apoi faceți clic pe Valoarea DWORD pentru a crea o nouă valoare DWORD.

  4. Redenumiți valoarea DWORD la următoarea valoare:

    OLEDBTimeout

    Notă: Această valoare este sensibilă

  5. Faceți clic dreapta pe valoarea DWORD și apoi faceți clic pe Modify.

  6. În caseta de dialog Edit DWORD Value , tastați 86400 în caseta Value data , faceți clic pe zecimal în opțiunea de bază și apoi faceți clic pe OK.


    Notă În conformitate cu cerințele de computer care execută SQL server și numărul de fișiere de personalizare, valoarea poate fi mai mare decât 86400. Valoarea 86400 este echivalentul a 24 de ore. Acest lucru ar trebui să numai face temporar sau ca pas de depanare. Valoarea recomandată de acest lucru este între 30 şi 300. Dacă această setare prea mare poate duce la probleme de performanță.

  7. Faceți clic dreapta pe MSCRM, indicați spre nouși apoi faceți clic pe Valoarea DWORD pentru a crea o nouă valoare DWORD.

  8. Redenumiți valoarea DWORD la următoarea valoare:

    ExtendedTimeout

  9. Faceți clic dreapta pe valoarea DWORD și apoi faceți clic pe Modify.

  10. În caseta de dialog Edit DWORD Value , tastați 1000000 în caseta Value data , și apoi faceți clic pe OK.

    Note

    • În caseta Value data , tastaţi o valoare mai mare de 1.000.000. Cu toate acestea, nu tastați o valoare mai mare de 2,147,483,647. Acest lucru este 0x7FFFFFFF hexazecimal.

    • Important: dacă există deja această cheie, observați valoarea curentă. După ce terminați importul sau upgrade-ul pentru Microsoft Dynamics CRM, setați valoarea acestei chei înapoi la valoarea originală sau ștergeți cheia, dacă nu au existat anterior. OLEDBTimeout valoarea implicită este de 30 de secunde.

Metoda 2: Modificați parametrii din două fișiere diferite Web.config

  1. Faceți clic pe Start, faceți clic pe Toate programele, faceți clic pe Instrumente de administrareși apoi faceți clic pe Internet Information Services (IIS) Manager.

  2. Extindeți numele serverului și apoi extindeți site-uri Web.

  3. Faceți clic dreapta pe site-ul Web Microsoft CRM v3.0 sau site-ul Web Microsoft CRM v4.0 , și apoi faceți clic pe Deschidere.

  4. Faceți clic dreapta pe fișierul Web.config, faceți clic pe Deschidere cuși apoi faceți clic pe Notepad.

  5. În Notepad, găsiți următoarea linie.

    <httpRuntime executionTimeout="300" maxRequestLength="8192"/>
  6. Modificați executionTimeout = "3600" și modificați maxRequestLength = "20000".

  7. Salvați și închideți fișierul Web.config.

  8. În directorul în care s-a deschis fișierul Web.config, deschideți folderul MSCRMServices.

  9. Faceți clic dreapta pe fișierul Web.config, faceți clic pe Deschidere cuși apoi faceți clic pe Notepad.

  10. În Notepad, găsiți următoarea linie.

    <httpRuntime maxRequestLength="8192"/>
  11. Modificați maxRequestLength = "20000".

  12. Salvați și închideți fișierul Web.config.

    • Important: după terminarea acțiune care necesită modificări de mai sus în fișierul web.config, acești parametri ar trebui să se reinițializeze la valorile implicite.


Mai multe informații

Valoarea OLEDBTimeout

Unitatea de valoarea OLEDBTimeout este secunde. În mod implicit, valoarea OLEDBTimeout este de 30 de secunde. Valoarea OLEDBTimeout controlează valoarea de expirare SQL care este utilizat pentru un singur SQL query. Valoarea OLEDBTimeout sporită este util când este suprasolicitat SQL server. În plus, interogarea durează mai mult timp pentru a procesa.

Valoarea ExtendedTimeout

Unitatea de valoarea ExtendedTimeout este milisecunde. În mod implicit, valoarea ExtendedTimeout este 1000000 milisecunde. Valoarea ExtendedTimeout controlează valoarea de expirare ASP.NET, care este utilizat pentru solicitările de import. Valoarea de expirare trebuie să fie mai mare de timp pentru a termina procesul de import întreg. Valoarea ExtendedTimeout sporită este util atunci când procesul de import durează mult timp.

Notă Atunci când performanța serverului SQL este lentă sau când există mai multe fișiere de particularizare pentru a importa, procesul de import durează mult timp.

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă la Microsoft Insider

V-a fost de ajutor această informație?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×