Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Managed Instance
A replikációs naplóolvasó ügynök egy végrehajtható fájl, amely figyeli a tranzakciós replikációhoz konfigurált adatbázisok tranzakciónaplóját, és a tranzakciónaplóból a terjesztési adatbázisba másolja a replikációra megjelölt tranzakciókat.
Megjegyzés:
A paraméterek bármilyen sorrendben megadhatók. Ha a választható paraméterek nincsenek megadva, a rendszer az alapértelmezett ügynökprofilon alapuló előre definiált értékeket használja.
Szemantika
logread [ -? ]
-Publisher server_name [ \instance_name ]
-PublisherDB publisher_database
[ -Continuous ]
[ -DefinitionFile def_path_and_file_name ]
[ -Distributor server_name[ \instance_name ] ]
[ -DistributorLogin distributor_login ]
[ -DistributorPassword distributor_password ]
[ -DistributorSecurityMode [ 0 | 1 ] ]
[ -EncryptionLevel [ 0 | 1 | 2 | 3 | 4 ] ]
[ -ExtendedEventConfigFile configuration_path_and_file_name ]
[ -HistoryVerboseLevel [ 0 | 1 | 2 ] ]
[ -KeepAliveMessageInterval keep_alive_message_interval_seconds ]
[ -LoginTimeOut login_time_out_seconds ]
[ -LogScanThreshold scan_threshold ]
[ -MaxCmdsInTran number_of_commands ]
[ -MessageInterval message_interval ]
[ -MultiSubnetFailover [ 0 | 1 ] ]
[ -Output output_path_and_file_name ]
[ -OutputVerboseLevel [ 0 | 1 | 2 | 3 | 4 ] ]
[ -PacketSize packet_size ]
[ -PollingInterval polling_interval ]
[ -ProfileName profile_name ]
[ -PublisherFailoverPartner server_name[ \instance_name ] ]
[ -PublisherSecurityMode [ 0 | 1 ] ]
[ -PublisherLogin publisher_login ]
[ -PublisherPassword publisher_password ]
[ -QueryTimeOut query_time_out_seconds ]
[ -ReadBatchSize number_of_transactions ]
[ -ReadBatchThreshold read_batch_threshold ]
[ -RecoverFromDataErrors ]
Érvek
-?
Megjeleníti a használati információkat.
-Kiadó server_name [ \instance_name ]
A Közzétevő neve. Adja meg <server_name> az SQL Server alapértelmezett példányát a kiszolgálón. Adja meg <server_name>\<instance_name> a kiszolgálón található SQL Server egy elnevezett példányát.
-PublisherDB publisher_database
A Publisher-adatbázis neve.
-Folyamatos
Megadja, hogy az ügynök folyamatosan próbálja-e lekérdezni a replikált tranzakciókat. Ha meg van adva, az ügynök lekérdezési időközönként lekérdezi a replikált tranzakciókat a forrásból, még akkor is, ha nincsenek függőben lévő tranzakciók.
-DefinitionFile def_path_and_file_name
Az ügynökdefiníciós fájl elérési útja. Az ügynökdefiníciós fájl parancssori argumentumokat tartalmaz az ügynökhöz. A fájl tartalma végrehajtható fájlként van elemezve. Idézőjelek (") használata tetszőleges karaktereket tartalmazó argumentumértékek megadásához.
- Forgalmazói server_name [ \instance_name ]
A forgalmazó neve. Adja meg <server_name> az SQL Server alapértelmezett példányát a kiszolgálón. Adja meg <server_name>\<instance_name> a kiszolgálón található SQL Server egy elnevezett példányát.
-DistributorLogin distributor_login
A forgalmazó bejelentkezési neve.
-ForgalmazóJelszó distributor_password
A forgalmazó jelszava.
-DistributorSecurityMode [ 0 | 1 ]
A forgalmazó biztonsági módját adja meg. Az sql 0 serveres hitelesítési módot (alapértelmezett) és a 1 Windows-hitelesítési módot jelző érték.
-Titkosítási szint [ 0 | 1 | 2 | 3 | 4 ]
A Transport Layer Security (TLS), korábbi nevén Secure Sockets Layer (SSL) titkosítás szintje, amelyet a naplóolvasó ügynök használ a kapcsolatok létrehozásakor.
| EncryptionLevel érték | Leírás |
|---|---|
0 |
Azt adja meg, hogy a TLS nincs használatban. |
1 |
A TLS 1.2 használatát határozza meg, de az ügynök nem ellenőrzi, hogy a TLS-kiszolgáló tanúsítványát megbízható kiállító írta-e alá. |
2 |
A TLS 1.2 használatát és a tanúsítvány ellenőrzését határozza meg. |
3 |
Megadja, hogy a felügyelt Azure SQL-példányból, illetve az SQL Server 2025-ös és újabb verzióiból az Azure SQL Managed Instance-hez való kapcsolatok esetében a TLS 1.3 legyen használva, és a tanúsítvány hitelesítve legyen. Az SQL Serverrel (bármely támogatott verzióval) létesített kapcsolatok esetén a TLS 1.3 nem lesz kényszerítve a beállítással 3. |
4 |
Megadja, hogy a felügyelt Azure SQL-példányból, illetve az SQL Server 2025-ös és újabb verzióiból az Azure SQL Managed Instance-hez való kapcsolatok esetében a TLS 1.3 legyen használva, és a tanúsítvány hitelesítve legyen. A felügyelt Azure SQL-példányról vagy az SQL Server 2025-ös és újabb verzióiról az SQL Serverre (bármely támogatott verzióra) irányuló kapcsolatok esetén a TLS 1.3-at használja a rendszer, és ellenőrzi a tanúsítványt. A tanúsítványt olyan SQL Server-gazdagépekre kell telepíteni, amelyek a következő beállítással EncryptionLevel4fogadnak kapcsolatokat: . |
Megjegyzés:
Távoli terjesztővel rendelkező replikációs topológiák esetén:
Az érvényes TLS/SSL-tanúsítvány az SQL Server teljes tartománynevével van definiálva. Ahhoz, hogy az ügynök sikeresen kapcsolódhasson a beállításkor -EncryptionLevel2, hozzon létre egy aliast a helyi SQL Serveren. Az "Alias neve" paraméternek a kiszolgálónévnek kell lennie, a "Kiszolgáló" paraméternek pedig az SQL Server teljes névre kell állítania.
További információ: Replikációs biztonsági beállítások megtekintése és módosítása.
-ExtendedEventConfigFile configuration_path_and_file_name
Megadja a kiterjesztett események XML-konfigurációs fájljának elérési útját és fájlnevét. A kiterjesztett eseménykonfigurációs fájl lehetővé teszi a munkamenetek konfigurálását és az események nyomon követését. Csak belső használatra.
-TörténelemVerboseSzint [ 0 | 1 | 2 ]
A naplóolvasó művelet során naplózott előzmények mennyiségét adja meg. Az előzménynaplózás teljesítményhatását a kijelöléssel 1minimalizálhatja.
| HistoryVerboseLevel érték | Leírás |
|---|---|
0 |
Nincs. |
1 (alapértelmezett) |
Mindig frissítsen egy korábbi, azonos állapotú előzményüzenetet (indítás, folyamat, siker stb.). Ha nincs ilyen állapotú korábbi rekord, szúrjon be egy új rekordot. |
2 |
Új előzményrekordok beszúrása, kivéve, ha a rekord olyan dolgokra vonatkozik, mint az üresjárati üzenetek vagy a hosszú ideig futó feladatüzenetek, amely esetben frissíti az előző rekordokat. |
-KeepAliveMessageInterval keep_alive_message_interval_seconds
Az előzmények szála előtti másodpercek száma ellenőrzi, hogy a meglévő kapcsolatok bármelyike vár-e a kiszolgáló válaszára. Ez az érték csökkenthető annak elkerülése érdekében, hogy a ellenőrzőügynök gyanúsként jelölje meg a naplóolvasó ügynököt egy hosszú ideig futó köteg végrehajtásakor. Az alapértelmezett érték 300 másodperc.
-BejelentkezésIdőKilépés login_time_out_seconds
A bejelentkezési idő túllépése előtt másodpercek száma. Az alapértelmezett érték 15 másodperc.
-LogScanThreshold scan_threshold
Csak tájékoztatási célokra van meghatározva. Nem támogatott. A jövőbeli kompatibilitás nem garantált.
-MaxCmdsInTran number_of_commands
A tranzakcióba csoportosított utasítások maximális számát adja meg, amikor a Naplóolvasó parancsokat ír a terjesztési adatbázisba. Ennek a paraméternek a használatával a Naplóolvasó ügynök és a terjesztési ügynök nagy (több parancsból álló) tranzakciókat oszthat fel a Publisherben több kisebb tranzakcióra, amikor az előfizetőnél alkalmazva van. Ennek a paraméternek a megadása csökkentheti a forgalmazónál való versengést, és csökkentheti a Publisher és az Előfizető közötti késést. Mivel az eredeti tranzakció kisebb egységekben van alkalmazva, az Előfizető hozzáférhet egy nagy logikai Publisher-tranzakció soraihoz az eredeti tranzakció vége előtt, ami megtöri a szigorú tranzakciós atomitást. Az alapértelmezett érték az 0, amely megőrzi a Publisher tranzakciós határait.
Ezt a paramétert a rendszer figyelmen kívül hagyja a nem SQL Server-kiadványok esetében. További információ: A tranzakciókészlet-feladat konfigurálása.
MaxCmdsInTran nem úgy tervezték, hogy mindig be legyen kapcsolva. Olyan esetekben működik, amikor valaki véletlenül nagy számú DML-műveletet hajtott végre egyetlen tranzakcióban. Ez késést okoz a parancsok terjesztésében, amíg a teljes tranzakció a terjesztési adatbázisban nem található, zárolások lesznek tárolva stb. Ha rendszeresen beleesik ebbe a helyzetbe, tekintse át az alkalmazásait, és keresse meg a tranzakció méretének csökkentésére vonatkozó módszereket.
Figyelmeztetés
Az elsődleges kulcs hibái akkor fordulhatnak elő, ha a MaxCmdsInTran paramétert hozzáadják és eltávolítják egy nagy tranzakció replikálása során. A nagy tranzakciók elsődleges kulcshibáinak megoldásához adja hozzá a MaxCmdsInTran paramétert, amíg a tranzakció replikálódik a terjesztési adatbázisba.
Az olyan adatbázisok paraméterének használata, amelyeken engedélyezve van a MaxCmdsInTran Change Data Capture (CDC) és a replikáció is, nem támogatott, és adatvesztéshez vezethet a CDC változástábláiban.
-MessageInterval message_interval
Az előzménynaplózáshoz használt időintervallum. A rendszer naplózza az előzményeseményt, ha az MessageInterval érték az utolsó előzményesemény naplózása után lesz elérve.
Ha a forrásnál nem érhető el replikált tranzakció, az ügynök tranzakciómentes üzenetet küld a forgalmazónak. Ez a beállítás azt határozza meg, hogy az ügynök mennyi ideig várakozik, mielőtt újabb tranzakció nélküli üzenetet küld. Az ügynökök mindig tranzakciómentes üzenetet jelentenek, amikor észlelik, hogy a replikált tranzakciók korábban történő feldolgozása után nem érhetők el tranzakciók a forrásnál. Az alapértelmezett érték 60 másodperc.
-MultiSubnetFailover [ 0 | 1 ]
A: SQL Server 2019 (15.x) és újabb verziókra vonatkozik.
Megadja, hogy a MultiSubnetFailover tulajdonság engedélyezve van-e. Ha az alkalmazás egy Always On rendelkezésre állási csoporthoz (AG) csatlakozik különböző alhálózatokon, a MultiSubnetFailover 1 (igaz) értékre állítása gyorsabb észlelést és kapcsolatot biztosít az (jelenleg) aktív kiszolgálóval.
Amikor tranzakciós kiadványt konfigurál egy AG-n, a Naplóolvasó ügynök létrehoz egy dinamikus csatolt kiszolgálót a figyelő számára a metaadatok ellenőrzéséhez. Az SQL Server 2022 (16.x) CU 10 és újabb verzióiban változás történt a dinamikus csatolt kiszolgáló konfigurációjában. További információ: KB5031778.
-Kimeneti output_path_and_file_name
Az ügynök kimeneti fájljának elérési útja. Ha a fájlnév nincs megadva, a rendszer elküldi a kimenetet a konzolnak. Ha a megadott fájlnév létezik, a kimenet hozzá lesz fűzve a fájlhoz.
-OutputVerboseLevel [ 0 | 1 | 2 | 3 | 4 ]
Megadja, hogy a kimenetnek részletesnek kell-e lennie.
| Érték | Leírás |
|---|---|
0 |
A rendszer csak a hibaüzeneteket nyomtatja ki. |
1 |
Az ügynök állapotjelentésének összes üzenete ki lesz nyomtatva. |
2 (alapértelmezett) |
A rendszer kinyomtatja az összes hibaüzenetet és az ügynök állapotjelentését. |
3 |
A rendszer az egyes replikált parancsok első 100 bájtját nyomtatja ki. |
4 |
A rendszer minden replikált parancsot kinyomtat. |
A hibakeresés során a 2–4. érték hasznos.
-Csomagméret packet_size
A csomag mérete bájtban. Az alapértelmezett érték 4096 (bájt).
-PollingInterval polling_interval
A rendszer másodpercek alatt lekérdezi a naplót a replikált tranzakciókhoz. Az alapértelmezett érték 5 másodperc.
-Profilnév profile_name
Megadja az ügynökparaméterekhez használandó ügynökprofilt. Ha ProfileName igen NULL, az ügynökprofil le van tiltva. Ha ProfileName nincs megadva, a rendszer az ügynöktípus alapértelmezett profilját használja. További információ: Replikációs ügynök profiljai.
-PublisherFailoverPartner server_name [ \instance_name ]
A közzétételi adatbázis adatbázis-tükrözési munkamenetében részt vevő SQL Server feladatátvevő partnerpéldányát adja meg. További információ: Adatbázis-tükrözés és replikáció (SQL Server).
-PublisherSecurityMode [ 0 | 1 ]
A Publisher biztonsági módját adja meg. Az érték az 0 SQL Server-hitelesítést (alapértelmezett) és a 1 Windows-hitelesítési módot jelöli.
-PublisherLogin publisher_login
A Publisher bejelentkezési neve.
-PublisherPassword publisher_password
A Publisher jelszava.
-QueryTimeOut query_time_out_seconds
A lekérdezés időtúllépése előtti másodpercek száma. Az alapértelmezett érték 1800 másodperc.
-ReadBatchSize number_of_transactions
A közzétételi adatbázis tranzakciónaplójában kiolvasott tranzakciók maximális száma feldolgozási ciklusonként, alapértelmezett értéke 500, maximum 10000. Az ügynök mindaddig olvassa a kötegekben lévő tranzakciókat, amíg az összes tranzakciót be nem olvassa a naplóból. Ez a paraméter nem támogatott az Oracle Publishers esetében.
-ReadBatchThreshold number_of_commands
A tranzakciónaplóból beolvasandó replikációs parancsok száma, mielőtt a terjesztési ügynök kiadja az előfizetőnek. Az alapértelmezett érték 0. Ha ez a paraméter nincs megadva, a Naplóolvasó ügynök a napló végéig vagy a megadott -ReadBatchSize számra (tranzakciók száma) olvas be.
-RecoverFromDataErrors
Azt adja meg, hogy a Naplóolvasó ügynök továbbra is futjon, ha nem SQL Server-közzétevőből közzétett oszlopadatokban hibákba ütközik. Az ilyen hibák alapértelmezés szerint a Naplóolvasó-ügynök sikertelenségéhez vezetnek. Ha használja -RecoverFromDataErrors, a rendszer a hibás oszlopadatokat vagy a megfelelő nem null értékként NULL replikálja, és figyelmeztető üzeneteket naplóz a MSlogreader_history táblába. Ez a paraméter csak az Oracle Publishers esetében támogatott.
Megjegyzések
Ha az SQL Server-ügynököt úgy telepítette, hogy egy helyi rendszerfiókban fusson a tartományi felhasználói fiók (alapértelmezett) helyett, a szolgáltatás csak a helyi számítógéphez férhet hozzá. Ha az SQL Server-ügynök alatt futó Naplóolvasó ügynök úgy van konfigurálva, hogy windowsos hitelesítési módot használjon, amikor bejelentkezik az SQL Serverbe, a Naplóolvasó ügynök sikertelen lesz. Az alapértelmezett beállítás az SQL Server-hitelesítés. A biztonsági fiókok módosításáról további információt a replikáció biztonsági beállításainak megtekintése és módosítása című témakörben talál.
A Naplóolvasó ügynök elindításához futtassa logread.exe a parancssorból. További információ: Replikációs ügynök végrehajthatók fogalmai.