Fórumok
Sziasztok!
Van egy 1,6 GB-os mysqldump állomány ami az egyik "fejlesztői" gépen iszonyú lassan töltődik vissza.
Ha egy time parancsot elé teszek a következő kimenetet kapom:
real 27m45,435s user 0m25,539s sys 0m0,912s
Viszonyításkép az egyik VPS-en 27 perc helyett 4 perc ugyan ez. Igaz ebben a "fejlesztői" gépben SATA SSD van, a VPS-ben meg valószínűleg sokkal gyorsabb MVMe SSD, de ekkora eltérésnek azért gondolom nem kellene lenni.
SMART információkból nekem úgy tűnik nincs baja az SSD-nek, ennek ellenére én azt sejtem a szűk keretmetszetnek. De ötletem sincs hol kezdjem a hibakeresést, mit nézzek és mivel. Tudnátok valamit tanácsolni? Én fejlesztő vagyok, ezekhez a dolgokhoz annyira nem értek.
Hozzászólások
Van-e a mysql szerver konfigokban eltérés? Illetve oprendszer/MySQL verzió eltérés van-e?
Több fajta sqldump létezhet, az egyiknél minden egyes sor külön insert-et kap, van ahol sok-sok sor van egy insert-ben. Ha külön insert-ek vannak, akkor jelentős különbség adódhat betöltéseknél. Az ilyen eseteknél a CPU és IO kapacitás ami még más lehet a két gépnél.
én feltételezem, hogy a kérdező uazt a dump-t próbálja meg betölteni mindkét helyen...
(de persze lehet, hogy hibásan teszem)
MySQL verzió? MySQL extra beállítások?
https://iotguru.cloud
Elsődlegesen szerintem az innodb paramétereit nézném meg. Ha tudod, dobd be a my.cnf-et.
A fejlesztőin.
A VPS-en:
Itt van egy mysqldump.cnf állomány is:
+ egy mysqld.conf is ami nincs a fejlesztőin (vagy csak én nem találom)
5.7.38-as verzió a fejlesztőin 5.7.26 a VPS-en.
:)
Ott a pont. :)
Viszont a fejlesztőin üresek a könyvtárak.
find / -name mysqld.conf
Az szándékos a VPS-en?
[mysqld]
skip-grant-tables
Remelem a 3306 port nem elerhető bárhonnan. :)
A memoria a VPS-en mekkora és mekkora a fejlesztői gépen? (buffer sokat segít, aszinkron io-ban, a VPS-en szerintem alapbol az van)
Bonusz: Ha windows az OS és van viruskergető (alapbol is van win defender), az nagyon szereti az on fly megfogni a servicek i/o-it hiszen minden rányulásnál scannel.
Add hozzá a mysql könyvtárat exception-nak, hogy arra ne akarjon scannelni minden műveletnél.
Szijártó Zoltán
Aki tud az alkot, aki nem tud az csak szövegel.
a visszatöltés idejére: innodb_flush_log_at_trx_commit = 0, sync_binlog = 0
De nincs kizárva sem. Elsőnek mérd meg a lemez io.t , mondjuk fio-val mindkét gépen, szinkron irást , aszinkron irást.
https://blog.claryel.hu