Megosztás a következőn keresztül:


Az Azure Synapse Analytics-, az Azure SQL Database-, az SQL Server-, az Azure SQL Managed Instance- és az Amazon RDS for SQL Server-összekötőkkel kapcsolatos hibák elhárítása az Azure Data Factoryben és az Azure Synapse-ben

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!

Ez a cikk az Azure Data Factory és az Azure Synapse SQL Server-összekötőkhöz készült Azure Synapse Analytics, az Azure SQL Database, az SQL Server, az Azure SQL Managed Instance és az Amazon RDS gyakori problémáinak elhárítására nyújt javaslatokat.

Hibakód: SqlFailedToConnect

  • Üzenet: Cannot connect to SQL Database: '%server;', Database: '%database;', User: '%user;'. Check the linked service configuration is correct, and make sure the SQL Database firewall allows the integration runtime to access.

  • Okok és javaslatok: Különböző okok vezethetnek ehhez a hibához. A lehetséges okelemzést és a kapcsolódó javaslatokat az alábbi listában találja.

    Okelemzés Ajánlás
    Ha az Azure SQL esetében a hibaüzenet az "SqlErrorNumber=47073" sztringet tartalmazza, az azt jelenti, hogy a kapcsolati beállítás megtagadja a nyilvános hálózati hozzáférést. Az Azure SQL tűzfalon állítsa a Nyilvános hálózati hozzáférés megtagadása beállítást Nem értékre. További információkért tekintse meg az Azure SQL csatlakozási beállításait.
    Az Azure SQL esetében, ha a hibaüzenet tartalmaz egy SQL-hibakódot( például "SqlErrorNumber=[errorcode]"), tekintse meg az Azure SQL hibaelhárítási útmutatóját. Javaslat : Az Azure SQL Database és a felügyelt Azure SQL-példány csatlakozási problémáinak és egyéb hibáinak elhárítása.
    Ellenőrizze, hogy az 1433-as port szerepel-e a tűzfal engedélyezési listáján. További információ: Az SQL Server által használt portok.
    Ha a hibaüzenet az "SqlException" sztringet tartalmazza, akkor az SQL Database azt jelzi, hogy egy adott művelet meghiúsult. További információ: keresés SQL-hibakód alapján az adatbázismotor hibáiban. További segítségért forduljon az Azure SQL ügyfélszolgálatához.
    Ha ez átmeneti probléma (például nem észlelhető hálózati kapcsolat), adjon hozzá újrapróbálkozási lehetőséget a tevékenységszabályzatban a mérséklés érdekében. További információ: Folyamatok és tevékenységek.
    Ha a hibaüzenet az "Ügyfél IP-címmel..." sztringet tartalmazza nem fér hozzá a kiszolgálóhoz", és az Azure SQL Database-hez próbál csatlakozni, a hibát általában az Azure SQL Database tűzfalproblémája okozza. Az Azure SQL Server tűzfalkonfigurációjában engedélyezze az Engedélyezett Azure-szolgáltatások és -erőforrások számára, hogy hozzáférjenek ehhez a kiszolgálóhoz . További információ: Azure SQL Database és Azure Synapse IP-tűzfalszabályok.
    Ha a hibaüzenet tartalmaz Login failed for user '<token-identified principal>', ezt a hibát általában az okozza, hogy nem ad elegendő engedélyt a szolgáltatásnévnek, a rendszer által hozzárendelt felügyelt identitásnak vagy a felhasználó által hozzárendelt felügyelt identitásnak (attól függően, hogy melyik hitelesítési típust választja) az adatbázisban. Adjon elegendő engedélyt a szolgáltatásnévnek vagy a rendszer által hozzárendelt felügyelt identitásnak vagy a felhasználó által hozzárendelt felügyelt identitásnak az adatbázisban.

    Azure SQL Database esetén:
        - Ha szolgáltatásnév-hitelesítést használ, kövesse a szolgáltatásnév-hitelesítést.
        - Ha rendszer által hozzárendelt felügyelt identitáshitelesítést használ, kövesse a rendszer által hozzárendelt felügyelt identitáshitelesítést.
        – Ha felhasználó által hozzárendelt felügyelt identitáshitelesítést használ, kövesse a felhasználó által hozzárendelt felügyelt identitáshitelesítést.
       
    Az Azure Synapse Analytics esetében:
        - Ha szolgáltatásnév-hitelesítést használ, kövesse a szolgáltatásnév-hitelesítést.
        - Ha rendszer által hozzárendelt felügyelt identitáshitelesítést használ, kövesse a rendszer által hozzárendelt felügyelt identitásokat az Azure-erőforrások hitelesítéséhez.
        – Ha felhasználó által hozzárendelt felügyelt identitáshitelesítést használ, kövesse a felhasználó által hozzárendelt felügyelt identitáshitelesítést.
       
    Felügyelt Azure SQL-példány esetén:
        - Ha szolgáltatásnév-hitelesítést használ, kövesse a szolgáltatásnév-hitelesítést.
       - Ha rendszer által hozzárendelt felügyelt identitáshitelesítést használ, kövesse a rendszer által hozzárendelt felügyelt identitáshitelesítést.
       – Ha felhasználó által hozzárendelt felügyelt identitáshitelesítést használ, kövesse a felhasználó által hozzárendelt felügyelt identitáshitelesítést.
    Ha megfelel a felügyelt Azure SQL-példány használatakor megjelenő The server was not found or was not accessible hibaüzenetnek, ezt a hibát általában az okozza, hogy nem engedélyezi az Azure SQL Managed Instance nyilvános végpontot. Tekintse meg a nyilvános végpont konfigurálását a felügyelt Azure SQL-példányban az Azure SQL Managed Instance nyilvános végpontjának engedélyezéséhez.

Hibakód: SqlOperationFailed

  • Üzenet: A database operation failed. Please search error to get more details.

  • Okok és javaslatok: Különböző okok vezethetnek ehhez a hibához. A lehetséges okelemzést és a kapcsolódó javaslatokat az alábbi listában találja.

    Okelemzés Ajánlás
    Ha a hibaüzenet az "SqlException" sztringet tartalmazza, az SQL Database hibát jelez, amely azt jelzi, hogy egy adott művelet meghiúsult. Ha az SQL-hiba nem egyértelmű, próbálja meg módosítani az adatbázist a legújabb kompatibilitási szintre (150). A legújabb verziójú SQL-hibákat okozhatja. További információért lásd a dokumentációt.
    Az SQL-hibák elhárításával kapcsolatos további információkért keressen sql hibakód alapján az adatbázismotor hibáiban. További segítségért forduljon az Azure SQL ügyfélszolgálatához.
    Ha a hibaüzenet a "PdwManagedToNativeInteropException" sztringet tartalmazza, azt általában a forrás és a fogadó oszlopméret közötti eltérés okozza. Ellenőrizze a forrás- és fogadóoszlopok méretét is. További segítségért forduljon az Azure SQL ügyfélszolgálatához.
    Ha a hibaüzenet az "InvalidOperationException" sztringet tartalmazza, azt általában érvénytelen bemeneti adatok okozzák. A probléma elhárításához engedélyezze a másolási tevékenység hibatűrési funkcióját, amely további vizsgálat céljából átirányíthatja a problémás sorokat a tárolóba. További információ: Másolási tevékenység hibatűrése.
    Ha a hibaüzenet a "Végrehajtási időtúllépés lejárt" szöveget tartalmazza, azt általában a lekérdezés időtúllépése okozza. Konfigurálja a lekérdezés időtúllépését a forrásban, és írja be a köteg időtúllépését a fogadóban az időtúllépés növeléséhez.
    Ha a hibaüzenet a hibrid adatok helyszíni SQL Server-táblába történő másolásakor jelenik Cannot find the object "dbo.Contoso" because it does not exist or you do not have permissions. meg, az aktuális SQL-fiók nem rendelkezik megfelelő engedélyekkel a .NET SqlBulkCopy.WriteToServer által kiadott kérések végrehajtásához, vagy a tábla vagy adatbázis nem létezik. Váltson egy kiemeltebb SQL-fiókra, vagy ellenőrizze, hogy létezik-e a tábla vagy az adatbázis.

Hibakód: SqlUnauthorizedAccess

  • Üzenet: Cannot connect to '%connectorName;'. Detail Message: '%message;'

  • Ok: A hitelesítő adatok helytelenek, vagy a bejelentkezési fiók nem tud hozzáférni az SQL-adatbázishoz.

  • Javaslat: Ellenőrizze, hogy a bejelentkezési fiók rendelkezik-e megfelelő engedélyekkel az SQL-adatbázis eléréséhez.

Hibakód: SqlOpenConnectionTimeout

  • Üzenet: Open connection to database timeout after '%timeoutValue;' seconds.

  • Ok: A probléma átmeneti SQL-adatbázishiba lehet.

  • Javaslat: Próbálkozzon újra a művelettel a társított szolgáltatás kapcsolati sztring nagyobb kapcsolati időtúllépési értékkel való frissítéséhez.

Hibakód: SqlAutoCreateTableTypeMapFailed

  • Üzenet: Type '%dataType;' in source side cannot be mapped to a type that supported by sink side(column name:'%columnName;') in autocreate table.

  • Ok: Az autocreation tábla nem felel meg a forráskövetelménynek.

  • Javaslat: Frissítse az oszloptípust a leképezésekben, vagy hozza létre manuálisan a fogadótáblát a célkiszolgálón.

Hibakód: SqlDataTypeNotSupported

  • Üzenet: A database operation failed. Check the SQL errors.

  • Ok: Ha a probléma az SQL-forrásban jelentkezik, és a hiba az SqlDateTime túlcsordulásával kapcsolatos, az adatérték meghaladja a logikai típustartományt (1753.01.01. 12:00:00 – 9999.12.31. 11:59:59).

  • Javaslat: Állítsa a típust a forrás SQL-lekérdezés sztringre, vagy a másolási tevékenység oszlopleképezésében módosítsa az oszloptípust Sztringre.

  • Ok: Ha a probléma az SQL-fogadóban jelentkezik, és a hiba az SqlDateTime túlcsordulásával kapcsolatos, az adatérték meghaladja a fogadó táblában megengedett tartományt.

  • Javaslat: Frissítse a megfelelő oszloptípust a fogadótáblában szereplő datetime2 típusra.

Hibakód: SqlInvalidDbStoredProcedure

  • Üzenet: The specified Stored Procedure is not valid. It could be caused by that the stored procedure doesn't return any data. Invalid Stored Procedure script: '%scriptName;'.

  • Okok és javaslatok: Különböző okok vezethetnek ehhez a hibához. A lehetséges okelemzést és a kapcsolódó javaslatokat az alábbi listában találja.

    Okelemzés Ajánlás
    A megadott tárolt eljárás érvénytelen. Ellenőrizze a tárolt eljárást az SQL Tools használatával. Győződjön meg arról, hogy a tárolt eljárás képes adatokat visszaadni.
    A keresési tevékenységhez a tárolt eljárásnak valamilyen értéket kell visszaadnia, de a tárolt eljáráskód nem ad vissza értéket. Akkor használja a tárolt eljárástevékenységet, ha a tárolt eljárás várhatóan nem ad vissza adatokat.

Hibakód: SqlInvalidDbQueryString

  • Üzenet: The specified SQL Query is not valid. It could be caused by that the query doesn't return any data. Invalid query: '%query;'

  • Ok: A megadott SQL-lekérdezés érvénytelen. Ennek oka lehet, hogy a lekérdezés nem ad vissza adatokat.

  • Javaslat: Ellenőrizze az SQL-lekérdezést az SQL Tools használatával. Győződjön meg arról, hogy a lekérdezés adatokat tud visszaadni.

Hibakód: SqlInvalidColumnName

  • Üzenet: Column '%column;' does not exist in the table '%tableName;', ServerName: '%serverName;', DatabaseName: '%dbName;'.

  • Ok: Az oszlop nem található, mert a konfiguráció helytelen lehet.

  • Javaslat: Ellenőrizze a lekérdezés oszlopát, az adathalmaz szerkezetét és a tevékenység leképezéseit .

Hibakód: SqlBatchWriteTimeout

  • Üzenet: Timeouts in SQL write operation.

  • Ok: A problémát átmeneti SQL-adatbázishiba okozhatja.

  • Javaslat: Próbálkozzon újra a művelettel. Ha a probléma továbbra is fennáll, forduljon az Azure SQL ügyfélszolgálatához.

Hibakód: SqlBatchWriteTransactionFailed

  • Üzenet: SQL transaction commits failed.

  • Ok: Ha a kivétel részletei folyamatosan tranzakciós időtúllépést jeleznek, az integrációs modul és az adatbázis közötti hálózati késés nagyobb, mint az alapértelmezett 30 másodperces küszöbérték.

  • Javaslat: Frissítse az SQL-társított szolgáltatás kapcsolati sztring egy 120-nál egyenlő vagy annál nagyobb kapcsolati időtúllépési értékkel, és futtassa újra a tevékenységet.

  • Ok: Ha a kivétel részletei időnként azt jelzik, hogy az SQL-kapcsolat megszakadt, átmeneti hálózati hiba vagy SQL-adatbázisoldali probléma lehet.

  • Javaslat: Próbálkozzon újra a tevékenységekkel, és tekintse át az SQL-adatbázis oldalmetrikáit.

Hibakód: SqlBulkCopyInvalidColumnLength

  • Üzenet: SQL Bulk Copy failed due to receive an invalid column length from the bcp client.

  • Ok: Az SQL tömeges másolása nem sikerült, mert érvénytelen oszlophosszt kapott a tömeges másolási program (bcp) segédprogram-ügyféltől.

  • Javaslat: A probléma által észlelt sor azonosításához engedélyezze a másolási tevékenység hibatűrési funkcióját. Ez átirányíthatja a problémás sorokat a tárolóba további vizsgálat céljából. További információ: Másolási tevékenység hibatűrése.

Hibakód: SqlConnectionIsClosed

  • Üzenet: The connection is closed by SQL Database.

  • Ok: Az SQL-kapcsolatot az SQL-adatbázis bezárja, amikor egy magas egyidejű futtatás és a kiszolgáló megszakítja a kapcsolatot.

  • Javaslat: Próbálkozzon újra a kapcsolattal. Ha a probléma továbbra is fennáll, forduljon az Azure SQL ügyfélszolgálatához.

Hibakód: SqlServerInvalidLinkedServiceCredentialMissing

  • Üzenet: The SQL Server linked service is invalid with its credential being missing.

  • Ok: A társított szolgáltatás nincs megfelelően konfigurálva.

  • Javaslat: Az SQL Server társított szolgáltatásának ellenőrzése és javítása.

Hibakód: SqlParallelFailedToDetectPartitionColumn

  • Üzenet: Failed to detect the partition column with command '%command;', %message;.

  • Ok: Nincs elsődleges kulcs vagy egyedi kulcs a táblában.

  • Javaslat: Ellenőrizze a táblát, hogy létrejön-e egy elsődleges kulcs vagy egy egyedi index.

Hibakód: SqlParallelFailedToDetectPhysicalPartitions

  • Üzenet: Failed to detect the physical partitions with command '%command;', %message;.

  • Ok: A rendszer nem hoz létre fizikai partíciókat a táblához. Ellenőrizze az adatbázist.

  • Javaslat: A probléma megoldásához hivatkozzon particionált táblák és indexek létrehozására.

Hibakód: SqlParallelFailedToGetPartitionRangeSynapse

  • Üzenet: Failed to get the partitions for azure synapse with command '%command;', %message;.

  • Ok: A rendszer nem hoz létre fizikai partíciókat a táblához. Ellenőrizze az adatbázist.

  • Javaslat: A probléma megoldásához hivatkozzon a dedikált SQL-készlet particionálási tábláira.

Hibaüzenet: A konvertálás sikertelen volt, amikor karaktersztringből uniqueidentifierre konvertált

  • Tünetek: Ha táblázatos adatforrásból (például SQL Serverről) másol adatokat az Azure Synapse Analyticsbe szakaszos másolás és PolyBase használatával, a következő hibaüzenet jelenik meg:

    ErrorCode=FailedDbOperation,Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException, Message=Error happened when loading data into Azure Synapse Analytics., Source=Microsoft.DataTransfer.ClientLibrary,Type=System.Data.SqlClient.SqlException, Message=Conversion failed when converting from a character string to uniqueidentifier...

  • Ok: Az Azure Synapse Analytics PolyBase nem tud egy üres sztringet GUID-ra konvertálni.

  • Megoldás: A másolási tevékenység fogadójában, a PolyBase beállításai között állítsa a használati típus alapértelmezett beállítását hamisra.

Hibaüzenet: Várt adattípus: DECIMÁLIS(x;x), Jogsértő érték

  • Tünetek: Ha táblázatos adatforrásból (például SQL Serverről) másol adatokat az Azure Synapse Analyticsbe szakaszos másolás és PolyBase használatával, a következő hibaüzenet jelenik meg:

    ErrorCode=FailedDbOperation,Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException, Message=Error happened when loading data into Azure Synapse Analytics., Source=Microsoft.DataTransfer.ClientLibrary,Type=System.Data.SqlClient.SqlException, Message=Query aborted-- the maximum reject threshold (0 rows) was reached while reading from an external source: 1 rows rejected out of total 415 rows processed. (/file_name.txt) Column ordinal: 18, Expected data type: DECIMAL(x,x), Offending value:..

  • Ok: Az Azure Synapse Analytics PolyBase nem tud üres sztringet (null értéket) beszúrni egy tizedesoszlopba.

  • Megoldás: A másolási tevékenység fogadójában, a PolyBase beállításai között állítsa a használati típus alapértelmezett beállítását hamisra.

Hibaüzenet: Java-kivétel üzenete: HdfsBridge::CreateRecordReader

  • Tünetek: Adatokat másol az Azure Synapse Analyticsbe a PolyBase használatával, és a következő hibaüzenet jelenik meg:

    Message=110802;An internal DMS error occurred that caused this operation to fail. Details: Exception: Microsoft.SqlServer.DataWarehouse.DataMovement.Common.ExternalAccess.HdfsAccessException, Message: Java exception raised on call to HdfsBridge_CreateRecordReader. Java exception message:HdfsBridge::CreateRecordReader - Unexpected error encountered creating the record reader.: Error [HdfsBridge::CreateRecordReader - Unexpected error encountered creating the record reader.] occurred while accessing external file.....

  • Ok: Az ok az lehet, hogy a séma (teljes oszlopszélesség) túl nagy (1 MB-nál nagyobb). Az összes oszlop méretének hozzáadásával ellenőrizze a cél Azure Synapse Analytics-tábla sémáját:

    • Int = 4 bájt
    • Bigint = 8 bájt
    • Varchar(n), char(n), binary(n), varbinary(n) = n bájt
    • Nvarchar(n), nchar(n) = n*2 bájt
    • Dátum = 6 bájt
    • Datetime/(2), smalldatetime = 16 bájt
    • Datetimeoffset = 20 bájt
    • Decimális = 19 bájt
    • Lebegőpontos = 8 bájt
    • Pénz = 8 bájt
    • Smallmoney = 4 bájt
    • Real = 4 bájt
    • Smallint = 2 bájt
    • Idő = 12 bájt
    • Tinyint = 1 bájt
  • Megoldás:

    • Csökkentse az oszlopok szélességét 1 MB-nál kisebbre.
    • Vagy használjon tömeges beszúrási módszert a PolyBase letiltásával.

Hibaüzenet: A HTTP feltételes fejléc(ek) használatával megadott feltétel nem teljesül

  • Tünetek: SQL-lekérdezéssel adatokat kérhet le az Azure Synapse Analyticsből, és a következő hibaüzenet jelenik meg:

    ...StorageException: The condition specified using HTTP conditional header(s) is not met...

  • Ok: Az Azure Synapse Analytics hibát észlelt az Azure Storage külső táblájának lekérdezése során.

  • Megoldás: Futtassa ugyanazt a lekérdezést az SQL Server Management Studióban (SSMS), és ellenőrizze, hogy ugyanazt az eredményt kapja-e. Ha igen, nyisson meg egy támogatási jegyet az Azure Synapse Analyticsben, és adja meg az Azure Synapse Analytics-kiszolgálót és az adatbázis nevét.

A teljesítményszint alacsony, és másolási hibához vezet

  • Tünetek: Adatokat másol az Azure SQL Database-be, és a következő hibaüzenet jelenik meg: Database operation failed. Error message from database execution : ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.

  • Ok: Az Azure SQL Database s1 bemeneti/kimeneti (I/O) korlátot ért el.

  • Megoldás: Frissítse az Azure SQL Database teljesítményszintet a probléma megoldásához.

Hibaüzenet: Sztring vagy bináris adatok csonkolt

  • Tünetek: Hiba történik, ha adatokat másol egy helyszíni Azure SQL Server-táblába.

  • Ok: Az SQL-tábla sémadefiníciója egy vagy több, a vártnál rövidebb hosszúságú oszlopot tartalmaz.

  • Megoldás: A probléma megoldásához próbálkozzon a következő megoldással:

    1. A problémát okozó sorok hibaelhárításához alkalmazzon SQL-fogadó hibatűrést, különösen redirectIncompatibleRowSettings.

      Feljegyzés

      A hibatűrés további végrehajtási időt igényelhet, ami magasabb költségekhez vezethet.

    2. Ellenőrizze duplán az átirányított adatokat az SQL-tábla sémaoszlopának hosszában, és ellenőrizze, hogy mely oszlopokat kell frissíteni.

    3. Ennek megfelelően frissítse a táblázatsémát.

Hibakód: FailedDbOperation

  • Üzenet: User does not have permission to perform this action.

  • Javaslat: Győződjön meg arról, hogy az Azure Synapse Analytics-összekötőben konfigurált felhasználónak "CONTROL" engedéllyel kell rendelkeznie a céladatbázison, miközben a PolyBase használatával tölt be adatokat. További információkért tekintse meg ezt a dokumentumot.

Hibakód: Msg 105208

  • Tünetek: Hibakód: Error code: Msg 105208, Level 16, State 1, Line 1 COPY statement failed with the following error when validating value of option 'FROM': '105200;COPY statement failed because the value for option 'FROM' is invalid.'
  • Ok: Jelenleg az adatok MÁSOLÁS paranccsal való betöltése egy Azure Storage-fiókba, amely az új DNS particionálási funkciót használja, hibát eredményez. A DNS-partíció funkcióval az ügyfelek előfizetésenként legfeljebb 5000 tárfiókot hozhatnak létre.
  • Megoldás: Tárfiók kiépítése olyan előfizetésben, amely nem használja az új Azure Storage DNS-partíció funkciót (jelenleg nyilvános előzetes verzióban).

Hibakód: SqlDeniedPublicAccess

  • Üzenet: Cannot connect to SQL Database: '%server;', Database: '%database;', Reason: Connection was denied since Deny Public Network Access is set to Yes. To connect to this server, 1. If you persist public network access disabled, please use Managed Virtual Network IR and create private endpoint. https://docs.microsoft.com/en-us/azure/data-factory/managed-virtual-network-private-endpoint; 2. Otherwise you can enable public network access, set "Public network access" option to "Selected networks" on Azure SQL Networking setting.

  • Okok: Az Azure SQL Database a nyilvános hálózati hozzáférés megtagadására van beállítva. Ehhez felügyelt virtuális hálózatot kell használnia, és privát végpontot kell létrehoznia a hozzáféréshez.

  • Javaslat:

    1. Ha ragaszkodik a nyilvános hálózati hozzáférés letiltáshoz, használjon felügyelt virtuális hálózati integrációs futtatókörnyezetet, és hozzon létre privát végpontot. További információ: Azure Data Factory által felügyelt virtuális hálózat.

    2. Ellenkező esetben engedélyezze a nyilvános hálózati hozzáférést úgy, hogy az Azure SQL Database hálózatkezelési beállítási lapján a nyilvános hálózati hozzáférési beállítást a kiválasztott hálózatokra állítja be.

További hibaelhárítási segítségért próbálja ki az alábbi erőforrásokat: