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


Kiszolgálókonfiguráció: hálózati csomagméret

A következőkre vonatkozik:SQL Server

Ez a cikk azt ismerteti, hogyan konfigurálhatja a kiszolgálókonfigurációs beállítást az network packet size SQL Server Management Studio vagy a Transact-SQL használatával. A network packet size beállítás a teljes hálózaton használt csomagméretet (bájtban) állítja be. A csomagok olyan rögzített méretű adattömbök, amelyek kéréseket és eredményeket továbbítanak az ügyfelek és kiszolgálók között. Az alapértelmezett csomagméret 4096 bájt.

Megjegyzés:

Ne módosítsa a csomagméretet, hacsak nem biztos abban, hogy az javítja a teljesítményt. A legtöbb alkalmazás esetében az alapértelmezett csomagméret a legjobb.

A beállítás a kiszolgáló újraindítása nélkül azonnal érvénybe lép.

Korlátozások

A titkosított kapcsolatok maximális hálózati csomagmérete 16 383 bájt.

Megjegyzés:

Ha a MARS engedélyezve van, az SMUX-szolgáltató 16 bájtos fejlécet ad hozzá a csomaghoz a TLS-titkosítás előtt, így a hálózati csomagok maximális mérete 16368 bájtra csökken.

Recommendations

Ez a beállítás egy speciális lehetőség, és csak tapasztalt adatbázis-szakembernek kell módosítania.

Ha egy alkalmazás tömeges másolási műveleteket végez, vagy nagy mennyiségű szöveges vagy képadatot küld vagy fogad, az alapértelmezettnél nagyobb csomagméret javíthatja a hatékonyságot, mivel kevesebb hálózati olvasási és írási műveletet eredményez. Ha egy alkalmazás kis mennyiségű információt küld és fogad, a csomagméret 512 bájtra állítható, ami a legtöbb adatátvitelhez elegendő.

A különböző hálózati protokollokat használó rendszereken állítsa a hálózati csomag méretét a leggyakrabban használt protokoll méretére. A hálózati csomagméret beállítás javítja a hálózati teljesítményt, ha a hálózati protokollok támogatják a nagyobb csomagokat. Az ügyfélalkalmazások felülírhatják ezt az értéket.

Meghívhatja az OLE DB-t, az Adatbázis-kapcsolat megnyitását (ODBC), és DB-Library függvények kérhetik a csomag méretének módosítását. Ha a kiszolgáló nem tudja támogatni a kért csomagméretet, az adatbázismotor figyelmeztető üzenetet küld az ügyfélnek. Bizonyos esetekben a csomag méretének módosítása kommunikációs kapcsolati hibához vezethet, például a következő hiba:

Native Error: 233, no process is on the other end of the pipe.

Permissions

Az engedélyek végrehajtása sp_configure paraméterek nélkül vagy csak az első paraméterrel alapértelmezés szerint minden felhasználónak meg lesz adva. A konfigurációs beállítás módosításához vagy az sp_configure utasítás futtatásához mindkét paraméterrel történő végrehajtáshoz RECONFIGURE a felhasználónak rendelkeznie kell a ALTER SETTINGS kiszolgálószintű engedéllyel. Az ALTER SETTINGS engedélyt implicit módon a sysadmin és a serveradmin rögzített kiszolgálói szerepkörök birtokolják.

Az SQL Server Management Studio használata

  1. Az Object Explorerben kattintson a jobb gombbal egy kiszolgálóra, és válassza a Tulajdonságok lehetőséget.

  2. Válassza ki a Speciális csomópontot.

  3. A Hálózat területen válassza ki a Hálózati csomagméret mező értékét.

Használd a Transact-SQL-t

  1. Csatlakozzon az adatbázismotorhoz.

  2. A Standard sávon válassza az Új lekérdezés lehetőséget.

  3. Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza a Végrehajtáslehetőséget. Ez a példa bemutatja, hogyan állíthatja be a beállítás értékét network packet size bájtra a 6500 használatával.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'network packet size', 6500;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'show advanced options', 0;
    GO
    
    RECONFIGURE;
    GO
    

További információ: Kiszolgálókonfigurációs beállítások.

Hálózati csomagméret konfigurálása az ügyféloldalon

Az alábbi táblázat példákat mutat be néhány adatkapcsolati technológiára, amelyekkel csatlakozhat az SQL Serverhez, és hogyan szabályozhatja a hálózati csomagok méretét, amikor ezeket ügyfélalkalmazásokban használja. Az SQL Serverhez való csatlakozáshoz használható különböző adatkapcsolati technológiák teljes listáját a Microsoft SQL Serverhez való ügyfélprogramozás kezdőlapja tartalmazza:

Ügyfélkönyvtár Lehetőség Alapértelmezett
SQLSetConnectAttr függvény SQL_ATTR_PACKET_SIZE Kiszolgálóoldal használata
A kapcsolat tulajdonságainak beállítása setPacketSize(int packetSize) 8 000
ADO.NET – Microsoft.Data.SqlClient PacketSize 8 000
ADO.NET – System.Data.SqlClient PacketSize 8 000
Inicializálási és engedélyezési tulajdonságok SSPROP_INIT_PACKETSIZE 0 (kiszolgálóoldal használata)

Az ügyfélkapcsolat hálózati csomagméretének meghatározásához monitorozhatja a naplózási bejelentkezési eseményt vagy a ExistingConnection eseményt az SQL Profilerben.

Ha az alkalmazás kapcsolati sztringje a hálózati csomag méretének értékét tartalmazza, akkor a rendszer ezt az értéket használja a kommunikációhoz. Ha a kapcsolati sztring nem tartalmaz értéket, az illesztőprogramok a hálózati csomagméret alapértelmezett értékeit használják. Például az előző táblázatban leírtak szerint az SqlClient-alkalmazások alapértelmezett csomagmérete 8000, míg az ODBC-alkalmazások a kiszolgálón konfigurált csomagméretet használják.

Fontos

A SQL Server natív ügyfél (gyakran rövidített SNAC) el lett távolítva az SQL Server 2022 (16.x) és az SQL Server Management Studio 19 (SSMS) szolgáltatásból. Az SQL Server natív ügyféloldali OLE DB-szolgáltatója (SQLNCLI vagy SQLNCLI11) és az sql serverhez készült örökölt Microsoft OLE DB-szolgáltató (SQLOLEDB) nem ajánlott az új fejlesztéshez. Váltson az SQL Serverhez készült új Microsoft OLE DB-illesztőre vagy az SQL Serverhez készült legújabb Microsoft ODBC-illesztőprogramra .