See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 13228|Vastuse: 3

[Allikas] Java JDBC rewriteBatchedStatements, allowPublicKeyRetrieval...

[Kopeeri link]
Postitatud 2022-2-11 13:59:18 | | |
Optimeeritud Java JDBC rewriteBatchedStatements, allowPublicKeyRetrieval, allowMultiQueries ja sslMode konfiguratsioonide jõudlus.

jdbc Kõik konfiguratsiooniomaduste dokumentatsioon:Hüperlingi sisselogimine on nähtav.

Läbivaatamine:

.NET/C# Optimeeritud SslMode jõudlus MySQL andmebaaside jaoks
https://www.itsvse.com/thread-9956-1-1.html

allowPublicKeyRetrieval

MySQL 8.0 kasutamisel kuvatakse pärast rakenduse taaskäivitamist com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Avaliku võtme leidmine ei ole lubatud

Lihtsaim lahendus on lisada see pärast ühenduse loomistallowPublicKeyRetrieval=true

Kui kasutaja kasutab sha256_password autentimist, tuleb parool edastamisel kaitsta TLS-protokolli abil, kuid kui RSA avalik võti pole saadaval, võib kasutada serveri poolt antud avalikku võtit; Serveri RSA avalikku võtit saab ühenduses määrata ServerRSAPublicKeyFile või parameetri AllowPublicKeyRetrieval=True kaudu, et klient saaks avaliku võtme serverilt; Siiski tuleb märkida, et AllowPublicKeyRetrieval=True võib põhjustada pahatahtlike agentide jaoks selgesõnaliste paroolide hankimist man-in-the-middle rünnakute (MITM) kaudu, seega on see vaikimisi välja lülitatud ja peab olema selgesõnaliselt lubatud.



rewriteBatchedStatements

Kõrge jõudlusega partii lisamise saavutamiseks lisatakse rewriteBatchedStatements parameeter JDBC ühenduse URL-ile MySQL-is ja tagatakse, et draiveri versioon 5.1.13 või hilem on garanteeritud. Vaikimisi ignoreerib MySQL JDBC draiver executeBatch() lauset, jagab SQL-laused, mida ootame partiidena täitvat, ja saadab need ükshaaval MySQL andmebaasi.
Ainult seades rewriteBatchedStatements parameetri tõeks, käivitab draiver SQL-i partiidena
See valik kehtib ka INSERT/UPDATE/DELETE puhul

Vaikimisi ignoreerib MySQL Jdbc draiver executeBatch() lauset, jagab SQL-lauseid, mida ootame partiidena täitma, ja saadab need ükshaaval MySQL andmebaasi, mis otseselt põhjustab madalat jõudlust.

Ainult rewriteBatchedStatements parameetri true'ks seaddes aitab draiver SQL-i hulgi käivitada (jdbc:mysql://ip:port/db?).rewriteBatchedStatements=true)


allowMultiQueries

Luba kasutada'; ' Eraldab mitu päringut (tõene/väär) ühes lauses. Vaikimisi väärtus on "false", mis ei mõjuta addBatch() ja executeBatch() meetodeid, mis sõltuvad rewriteBatchStatementsist.

Kui MySQL ühendub andmebaasiga, lisa lause:allowMultiQueries=true":

1. SQL lause järel saab kanda semikoolonit, et saavutada mitme lause täitmine.
2. Partiitöötlust saab teha ja samaaegselt väljastada mitu SQL-lauset.


sslMode

Vaikimisi on võrguühendused SSL-krüpteeritud; See omadus võimaldab sul turvalise ühenduse välja lülitada või valida teise turvataseme. Lubatud on järgmised väärtused: "DISABLED" – luuakse krüpteerimata ühendus; "EELISTATUD" – (vaikimisi) Kui server lubab krüpteeritud ühendusi, luuakse krüpteeritud ühendus, vastasel juhul langeb see tagasi krüpteerimata ühendusele; "VAJALIK" – Loo turvaline ühendus, kui server on selle lubanud, vastasel juhul see ebaõnnestub; "VERIFY_CA" – Sarnane "VAJALIK"-le, kuid lisaks valideerib serveri TLS-sertifikaadi konfigureeritud sertifikaadiautoriteedi (CA) sertifikaadi vastu; "VERIFY_IDENTITY" - nagu "VERIFY_CA",

See atribuut asendab vananenud vanad atribuudid "useSSL", "requireSSL" ja "verifyServerCertificate", mis on endiselt aktsepteeritud, kuid teisendatud väärtuseks "sslMode", kui "sslMode" ei ole selgesõnaliselt seatud: "useSSL=false" teisendatakse "sslMode=disabled"-iks; {"useSSL=true", "requireSSL=false", "verifyServerCertificate=false"} tõlgitakse kui "sslMode=PREFERRED"; {"useSSL=true", "requireSSL=true", "verifyServerCertificate=false"} tõlgitakse kui "sslMode=REQUIRED"; {"useSSL=true" JA "verifyServerCertificate=true"} tõlgitakse kui "sslMode" vaikimisi seadistus on "PREFERRED", mis vastab traditsioonilistele "useSSL=true", "requireSSL=false" ja "verifyServerCertificate=false" seadetele, mis on sama mis Connector/ J 8.0.12 ja varasemate versioonide vaikeseaded on mõnel juhul erinevad. Rakendused, mis jätkavad vanade atribuutide kasutamist ja tuginevad oma vanadele vaikeseadetele, tuleks üle vaadata. Vaikimisi seadistus "sslMode" jaoks on "EELISTATUD", mis vastab traditsioonilistele seadistustele "useSSL=true", "requireSSL=false" ja "verifyServerCertificate=false", mis erineb mõnel juhul Connector/J 8.0.12 ja varasemate vaikimisi seadistustest. Rakendused, mis jätkavad vanade atribuutide kasutamist ja tuginevad oma vanadele vaikeseadetele, tuleks üle vaadata. Mõnel juhul on see 12 või varem. Rakendused, mis jätkavad vanade atribuutide kasutamist ja tuginevad oma vanadele vaikeseadetele, tuleks üle vaadata. Mõnel juhul on see 12 või varem. Rakendused, mis jätkavad vanade atribuutide kasutamist ja tuginevad oma vanadele vaikeseadetele, tuleks üle vaadata.

Kui "sslMode" on selgelt seatud, ignoreeritakse vana omadust. Kui "sslMode" või "useSSL" ei ole selgelt seatud, rakendatakse vaikimisi seadistus "sslMode=PREFERRED".

JDBC seaded turvaliste ühenduste väljalülitamiseks:sslmode=keelatud




Eelmine:Kuidas Linuxis faile partiidena ümber nimetada
Järgmine:Kuidas piirata Taiwani kasutajate registreerimist, postitada infot soovi korral ja küsida nõu, kuidas kirjutada.
 Üürileandja| Postitatud 2022-2-11 14:04:39 |
Vedru andmebaasi ühenduse string

Postitatud 2022-2-13 16:31:57 |
Õpi õppima.
 Üürileandja| Postitatud 2024-4-25 08:38:32 |
C# Erand
System.InvalidOperationException: An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure()' to the 'UseMySql' call.
---> MySqlConnector.MySqlException (0x80004005): Autentimismeetod 'caching_sha2_password' ebaõnnestus. Kasuta kas turvalist ühendust, määra serveri RSA avalik võti ServerRSAPublicKeyFile'iga või määra AllowPublicKeyRetrieval=True.


lahus

Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com