Share via


Kiszolgálóparaméterek az Azure Database for MySQL-ben

A következőkre vonatkozik: Azure Database for MySQL – Önálló kiszolgáló

Fontos

Az önálló Azure Database for MySQL-kiszolgáló a kivonási útvonalon van. Határozottan javasoljuk, hogy frissítsen rugalmas Azure Database for MySQL-kiszolgálóra. További információ a rugalmas Azure Database for MySQL-kiszolgálóra való migrálásról: Mi történik az önálló Azure Database for MySQL-kiszolgálóval?

Ez a cikk a kiszolgálóparaméterek Azure Database for MySQL-ben való konfigurálásának szempontjait és irányelveit ismerteti.

Mik azok a kiszolgálóparaméterek?

A MySQL-motor számos különböző kiszolgálóváltozót és paramétert biztosít, amelyekkel konfigurálhatja és hangolhatja a motor viselkedését. Egyes paraméterek futásidőben dinamikusan állíthatók be, míg mások statikusak, és a kiszolgáló újraindítását igénylik az alkalmazáshoz.

Az Azure Database for MySQL lehetővé teszi a különböző MySQL-kiszolgálóparaméterek értékének módosítását az Azure Portal, az Azure CLI és a PowerShell használatával a számítási feladatok igényeinek megfelelően.

Konfigurálható kiszolgálóparaméterek

A támogatott kiszolgálóparaméterek listája folyamatosan növekszik. Az Azure Portalon a kiszolgálóparaméterek lapon tekintheti meg a teljes listát, és konfigurálhatja a kiszolgálóparaméterek értékeit.

A gyakran frissített kiszolgálóparaméterek korlátairól az alábbi szakaszokban olvashat bővebben. A korlátokat a kiszolgáló tarifacsomagja és virtuális magjai határozzák meg.

Szálkészletek

A MySQL hagyományosan minden ügyfélkapcsolathoz hozzárendel egy szálat. Az egyidejű felhasználók számának növekedésével párhuzamosan csökken a teljesítmény. Számos aktív szál jelentősen befolyásolhatja a teljesítményt a környezetváltás, a szálak versengése és a cpu-gyorsítótárak rossz helyének köszönhetően.

A szálkészletek, a kiszolgálóoldali funkciók és a kapcsolatkészletezéstől eltérő funkció maximalizálják a teljesítményt a feldolgozószálak dinamikus készletének bevezetésével. Ezzel a funkcióval korlátozhatja a kiszolgálón futó aktív szálak számát, és minimalizálhatja a szálváltozást. Ez segít biztosítani, hogy a kapcsolatok megszakadása ne okozza a kiszolgáló számára az erőforrások vagy a memória elfogyását. A szálkészletek a leghatékonyabbak a rövid lekérdezésekhez és a processzorigényes számítási feladatokhoz, például az OLTP-számítási feladatokhoz.

További információ: A szálkészletek bemutatása az Azure Database for MySQL-ben.

Megjegyzés:

A MySQL 5.6 nem támogatja a szálkészleteket.

A szálkészlet konfigurálása

A szálkészlet engedélyezéséhez frissítse a kiszolgáló paraméterét a thread_handling következőre pool-of-threads: . Ez a paraméter alapértelmezés szerint a következőre van állítva, ami azt jelenti, hogy one-thread-per-connectiona MySQL minden új kapcsolathoz létrehoz egy új szálat. Ez egy statikus paraméter, és a kiszolgáló újraindítását igényli.

A készletben lévő szálak maximális és minimális számát a következő kiszolgálóparaméterek beállításával is konfigurálhatja:

  • thread_pool_max_threads: Ez az érték korlátozza a készletben lévő szálak számát.
  • thread_pool_min_threads: Ez az érték beállítja a fenntartott szálak számát, még a kapcsolatok bezárása után is.

A szálkészlet rövid lekérdezéseinek teljesítményproblémáinak javítása érdekében engedélyezheti a kötegelt végrehajtást. Ahelyett, hogy a lekérdezés futtatása után azonnal visszatér a szálkészlethez, a szálak rövid ideig aktívak maradnak, hogy a kapcsolaton keresztül várják a következő lekérdezést. A szál ezután gyorsan futtatja a lekérdezést, és ha ez befejeződött, a szál megvárja a következőt. Ez a folyamat addig folytatódik, amíg a teljes eltöltött idő meghaladja a küszöbértéket.

A kötegelt végrehajtás viselkedését a következő kiszolgálóparaméterek használatával határozhatja meg:

  • thread_pool_batch_wait_timeout: Ez az érték azt határozza meg, hogy egy szál mennyi ideig vár egy másik lekérdezés feldolgozására.
  • thread_pool_batch_max_time: Ez az érték határozza meg, hogy egy szál mennyi ideig ismételje meg a lekérdezés végrehajtásának ciklusát, és várja meg a következő lekérdezést.

Fontos

Ne kapcsolja be a szálkészletet éles környezetben, amíg nem teszteli.

log_bin_trust_function_creators

Az Azure Database for MySQL-ben a bináris naplók mindig engedélyezve vannak (a log_bin paraméter értéke ON). Ha eseményindítókat szeretne használni, a következőhöz hasonló hibaüzenet jelenik meg: Nem rendelkezik SUPER jogosultsággal, és a bináris naplózás engedélyezve van (lehet, hogy a kevésbé biztonságos log_bin_trust_function_creators változót szeretné használni).

A bináris naplózás formátuma mindig SOR, és a kiszolgálóhoz csatlakozó összes kapcsolat mindig soralapú bináris naplózást használ. A soralapú bináris naplózás segít fenntartani a biztonságot, és a bináris naplózás nem tud megtörni, így biztonságosan beállíthatja a következőt log_bin_trust_function_creatorsTRUE: .

innodb_buffer_pool_size

A paraméterről további információt a MySQL dokumentációjában talál.

Kiszolgálók általános célú tároló 1-ben (legfeljebb 4 TB-ot támogatnak)

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték (bájt)
Basic 1 872415232 134217728 872415232
Basic 2 2684354560 134217728 2684354560
General Purpose 2 3758096384 134217728 3758096384
General Purpose 4 8053063680 134217728 8053063680
General Purpose 8 16106127360 134217728 16106127360
General Purpose 16 32749125632 134217728 32749125632
General Purpose 32 66035122176 134217728 66035122176
General Purpose 64 132070244352 134217728 132070244352
Memory Optimized 2 7516192768 134217728 7516192768
Memory Optimized 4 16106127360 134217728 16106127360
Memory Optimized 8 32212254720 134217728 32212254720
Memory Optimized 16 65498251264 134217728 65498251264
Memory Optimized 32 132070244352 134217728 132070244352

Kiszolgálók általános célú tároló 2-ben (legfeljebb 16 TB-ot támogatnak)

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték (bájt)
Basic 1 872415232 134217728 872415232
Basic 2 2684354560 134217728 2684354560
General Purpose 2 7516192768 134217728 7516192768
General Purpose 4 16106127360 134217728 16106127360
General Purpose 8 32212254720 134217728 32212254720
General Purpose 16 65498251264 134217728 65498251264
General Purpose 32 132070244352 134217728 132070244352
General Purpose 64 264140488704 134217728 264140488704
Memory Optimized 2 15032385536 134217728 15032385536
Memory Optimized 4 32212254720 134217728 32212254720
Memory Optimized 8 64424509440 134217728 64424509440
Memory Optimized 16 130996502528 134217728 130996502528
Memory Optimized 32 264140488704 134217728 264140488704

innodb_file_per_table

A MySQL a InnoDB tábla létrehozása során megadott konfiguráció alapján különböző táblaterekben tárolja a táblát. A rendszer táblatere az adatszótár tárolási területe InnoDB . A táblánkénti fájltér egyetlen InnoDB tábla adatait és indexeit tartalmazza, és a fájlrendszerben tárolja a saját adatfájljában.

Ezt a viselkedést a innodb_file_per_table kiszolgálóparaméterrel szabályozhatja. OFF Táblák létrehozásának okainak InnoDB beállítása innodb_file_per_table a rendszer táblaterében. InnoDB Ellenkező esetben táblákat hoz létre a fájlonkénti táblaterekben.

Megjegyzés:

Csak az általános célú és a memóriaoptimalizált tarifacsomagokban frissíthet innodb_file_per_table az általános célú tárolás v2 és az általános célú tárolás 1.

Az Azure Database for MySQL egyetlen adatfájlban 4 TB-ot (a legnagyobbat) támogat az általános célú tárolás v2-n. Ha az adatbázis mérete 4 TB-nál nagyobb, akkor a táblát a innodb_file_per_table táblatérben kell létrehoznia. Ha egyetlen, 4 TB-nál nagyobb táblázatmérete van, használja a partíciótáblát.

join_buffer_size

A paraméterről további információt a MySQL dokumentációjában talál.

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték (bájt)
Basic 1 Alapszintű szinten nem konfigurálható N.A. N.A.
Basic 2 Alapszintű szinten nem konfigurálható N.A. N.A.
General Purpose 2 262144 128 268435455
General Purpose 4 262144 128 536870912
General Purpose 8 262144 128 1073741824
General Purpose 16 262144 128 2147483648
General Purpose 32 262144 128 4294967295
General Purpose 64 262144 128 4294967295
Memory Optimized 2 262144 128 536870912
Memory Optimized 4 262144 128 1073741824
Memory Optimized 8 262144 128 2147483648
Memory Optimized 16 262144 128 4294967295
Memory Optimized 32 262144 128 4294967295

max_connections

Tarifacsomag virtuális mag(ok) Alapértelmezett érték Minimális érték Maximális érték
Basic 1 50 10 50
Basic 2 100 10 100
General Purpose 2 300 10 600
General Purpose 4 625 10 1250
General Purpose 8 1250 10 2500
General Purpose 16 2500 10 5000
General Purpose 32 5000 10 10000
General Purpose 64 10000 10 20000
Memory Optimized 2 625 10 1250
Memory Optimized 4 1250 10 2500
Memory Optimized 8 2500 10 5000
Memory Optimized 16 5000 10 10000
Memory Optimized 32 10000 10 20000

Ha a kapcsolatok száma meghaladja a korlátot, hibaüzenet jelenhet meg.

Tipp.

A kapcsolatok hatékony kezeléséhez érdemes egy kapcsolatkészletezőt, például a ProxySQL-t használni. A ProxySQL beállításáról a Load Balance olvasási replikák proxySQL használatával történő terheléselosztása az Azure Database for MySQL-ben című blogbejegyzésben olvashat. Vegye figyelembe, hogy a ProxySQL egy nyílt forráskód közösségi eszköz. A Microsoft minden tőle telhetőt megtesz.

max_heap_table_size

A paraméterről további információt a MySQL dokumentációjában talál.

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték (bájt)
Basic 1 Alapszintű szinten nem konfigurálható N.A. N.A.
Basic 2 Alapszintű szinten nem konfigurálható N.A. N.A.
General Purpose 2 16777216 16384 268435455
General Purpose 4 16777216 16384 536870912
General Purpose 8 16777216 16384 1073741824
General Purpose 16 16777216 16384 2147483648
General Purpose 32 16777216 16384 4294967295
General Purpose 64 16777216 16384 4294967295
Memory Optimized 2 16777216 16384 536870912
Memory Optimized 4 16777216 16384 1073741824
Memory Optimized 8 16777216 16384 2147483648
Memory Optimized 16 16777216 16384 4294967295
Memory Optimized 32 16777216 16384 4294967295

query_cache_size

A lekérdezési gyorsítótár alapértelmezés szerint ki van kapcsolva. A lekérdezési gyorsítótár engedélyezéséhez konfigurálja a paramétert query_cache_type .

A paraméterről további információt a MySQL dokumentációjában talál.

Megjegyzés:

A lekérdezési gyorsítótár elavult a MySQL 5.7.20-as verziójától, és a MySQL 8.0-s verziójában el lett távolítva.

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték
Basic 1 Alapszintű szinten nem konfigurálható N.A. N.A.
Basic 2 Alapszintű szinten nem konfigurálható N.A. N.A.
General Purpose 2 0 0 16777216
General Purpose 4 0 0 33554432
General Purpose 8 0 0 67108864
General Purpose 16 0 0 134217728
General Purpose 32 0 0 134217728
General Purpose 64 0 0 134217728
Memory Optimized 2 0 0 33554432
Memory Optimized 4 0 0 67108864
Memory Optimized 8 0 0 134217728
Memory Optimized 16 0 0 134217728
Memory Optimized 32 0 0 134217728

lower_case_table_names

A lower_case_table_name paraméter alapértelmezés szerint 1 értékre van állítva, és ezt a paramétert frissítheti a MySQL 5.6-ban és a MySQL 5.7-ben.

A paraméterről további információt a MySQL dokumentációjában talál.

Megjegyzés:

A MySQL 8.0-ban lower_case_table_name alapértelmezés szerint 1 értékre van állítva, és nem módosíthatja.

innodb_strict_mode

Ha hasonló hibaüzenetet kap, érdemes kikapcsolni Row size too large (> 8126)a paramétert innodb_strict_mode . Globálisan nem módosítható innodb_strict_mode a kiszolgáló szintjén. Ha a sorok adatmérete nagyobb, mint 8K, az adatok csonkulnak, hibaértesítés nélkül, ami potenciális adatvesztéshez vezet. Érdemes úgy módosítani a sémát, hogy megfeleljen az oldalméretkorlátnak.

Ezt a paramétert munkamenetszinten állíthatja be a következő használatával init_connect: . A munkamenet szintjén történő beállításhoz innodb_strict_mode tekintse meg a nem listázott beállítási paramétert.

Megjegyzés:

Ha olvasási replikakiszolgálóval rendelkezik, a forráskiszolgáló munkamenet szintjén történő beállítása innodb_strict_modeOFF megszakítja a replikációt. Javasoljuk, hogy ON az olvasási replikák esetén állítsa be a paramétert.

sort_buffer_size

A paraméterről további információt a MySQL dokumentációjában talál.

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték (bájt)
Basic 1 Alapszintű szinten nem konfigurálható N.A. N.A.
Basic 2 Alapszintű szinten nem konfigurálható N.A. N.A.
General Purpose 2 524288 32 768 4194304
General Purpose 4 524288 32 768 8388608
General Purpose 8 524288 32 768 16777216
General Purpose 16 524288 32 768 33554432
General Purpose 32 524288 32 768 33554432
General Purpose 64 524288 32 768 33554432
Memory Optimized 2 524288 32 768 8388608
Memory Optimized 4 524288 32 768 16777216
Memory Optimized 8 524288 32 768 33554432
Memory Optimized 16 524288 32 768 33554432
Memory Optimized 32 524288 32 768 33554432

tmp_table_size

A paraméterről további információt a MySQL dokumentációjában talál.

Tarifacsomag virtuális mag(ok) Alapértelmezett érték (bájt) Minimális érték (bájt) Maximális érték (bájt)
Basic 1 Alapszintű szinten nem konfigurálható N.A. N.A.
Basic 2 Alapszintű szinten nem konfigurálható N.A. N.A.
General Purpose 2 16777216 1024 67108864
General Purpose 4 16777216 1024 134217728
General Purpose 8 16777216 1024 268435456
General Purpose 16 16777216 1024 536870912
General Purpose 32 16777216 1024 1073741824
General Purpose 64 16777216 1024 1073741824
Memory Optimized 2 16777216 1024 134217728
Memory Optimized 4 16777216 1024 268435456
Memory Optimized 8 16777216 1024 536870912
Memory Optimized 16 16777216 1024 1073741824
Memory Optimized 32 16777216 1024 1073741824

InnoDB pufferkészlet bemelegítése

Az Azure Database for MySQL újraindítása után a rendszer betölti a lemezen található adatlapokat a táblák lekérdezése során. Ez a lekérdezések első futtatása során megnövekedett késéshez és lassabb teljesítményhez vezet. A késésre érzékeny számítási feladatok esetében előfordulhat, hogy ez a lassabb teljesítmény elfogadhatatlan.

A pufferkészlet bemelegítésével InnoDB lerövidítheti a bemelegítési időszakot. Ez a folyamat újra betölti a pufferkészletben lévő lemezlapokat az újraindítás előtt, ahelyett, hogy a DML- vagy Standard kiadás LECT-műveletekre vár a megfelelő sorok eléréséhez. További információ: InnoDB pufferkészlet-kiszolgáló paraméterei.

A jobb teljesítmény azonban a kiszolgáló hosszabb indítási idejének rovására megy. Ha engedélyezi ezt a paramétert, a kiszolgáló indítási és újraindítási ideje várhatóan nőni fog a kiszolgálón kiépített IOPS-tól függően. Érdemes tesztelni és figyelni az újraindítási időt, hogy az indítási vagy újraindítási teljesítmény elfogadható legyen, mivel a kiszolgáló nem érhető el ez idő alatt. Ne használja ezt a paramétert, ha a kiépített IOPS száma kisebb, mint 1000 IOPS (vagyis ha a kiépített tárterület kisebb, mint 335 GB).

A pufferkészlet állapotának kiszolgálóleállításkor történő mentéséhez állítsa a kiszolgálóparamétert innodb_buffer_pool_dump_at_shutdown a következőre ON: . Hasonlóképpen állítsa be a kiszolgálóparamétert innodb_buffer_pool_load_at_startupON a pufferkészlet állapotának visszaállítására a kiszolgáló indításakor. A kiszolgálóparaméter innodb_buffer_pool_dump_pctértékének csökkentésével és finomhangolásával szabályozhatja az indításra vagy újraindításra gyakorolt hatást. Ez a paraméter alapértelmezés szerint a következőre 25van állítva: .

Megjegyzés:

InnoDB a pufferkészlet bemelegítési paraméterei csak az általános célú, legfeljebb 16 TB tárterülettel rendelkező tárolókiszolgálókon támogatottak. További információkért tekintse meg az Azure Database for MySQL tárolási lehetőségeit.

time_zone

A kezdeti üzembe helyezéskor az Azure Database for MySQL-t futtató kiszolgáló rendszertáblákat tartalmaz az időzóna-információkhoz, de ezek a táblák nincsenek feltöltve. A táblákat feltöltheti úgy, hogy meghívja a mysql.az_load_timezone tárolt eljárást olyan eszközökről, mint a MySQL parancssor vagy a MySQL Workbench. A tárolt eljárások meghívásáról és a globális vagy munkamenetszintű időzónák beállításáról további információt az időzóna paraméterrel (Azure Portal) vagy az időzóna paraméterrel (Azure CLI) végzett munka című témakörben talál.

binlog_expire_logs_seconds

Az Azure Database for MySQL-ben ez a paraméter határozza meg, hogy a szolgáltatás hány másodpercet vár a bináris naplófájl törlése előtt.

A bináris napló olyan eseményeket tartalmaz, amelyek az adatbázis változásait írják le, például a táblalétrehozási műveleteket vagy a táblaadatok módosítását. Olyan utasítások eseményeit is tartalmazza, amelyek esetleg módosításokat hajthatnak végre. A bináris naplót főként két célra, replikációs és adat-helyreállítási műveletekre használják.

A bináris naplók általában azonnal törlődnek, amint a leíró szolgáltatástól, biztonsági mentéstől vagy replikakészlettől mentes. Ha több replika is létezik, a bináris naplók megvárják, amíg a leglassabb replika felolvassa a módosításokat a törlés előtt. Ha azt szeretné, hogy a bináris naplók hosszabb ideig megmaradjanak, konfigurálhatja a paramétert binlog_expire_logs_seconds. Ha az alapértelmezett értékre 0van állítvabinlog_expire_logs_seconds, akkor a bináris napló leírójának felszabadítása után azonnal törlődik. Ha 0-nál nagyobb értékre van állítva binlog_expire_logs_seconds , akkor a bináris napló csak az adott időszak után törlődik.

Az Azure Database for MySQL esetében a felügyelt funkciók, például a bináris fájlok biztonsági mentése és olvasási replika törlése belsőleg lesznek kezelve. Ha az adatokat az Azure Database for MySQL szolgáltatásból replikálja, ezt a paramétert az elsődleges helyen kell beállítania, hogy elkerülje a bináris naplók kiürítését, mielőtt a replika beolvassa az elsődleges módosításokat. Ha magasabb értékre állítja a binlog_expire_logs_seconds függvényt, akkor a bináris naplók nem lesznek elég hamar kiürítve. Ez a tárterület számlázásának növekedéséhez vezethet.

event_scheduler

Az Azure Database for MySQL-ben a kiszolgálóparaméter kezeli az event_schedule ütemezés szerint futó események létrehozását, ütemezését és futtatását, és egy speciális eseményütemező-szál futtatja őket. Ha a event_scheduler paraméter BE értékre van állítva, az eseményütemező szál démonfolyamatként jelenik meg a SHOW PROCESSLIST kimenetében. Eseményeket az alábbi SQL-szintaxissal hozhat létre és ütemezhet:

CREATE EVENT <event name>
ON SCHEDULE EVERY _ MINUTE / HOUR / DAY
STARTS TIMESTAMP / CURRENT_TIMESTAMP
ENDS TIMESTAMP / CURRENT_TIMESTAMP + INTERVAL 1 MINUTE / HOUR / DAY
COMMENT ‘<comment>’
DO
<your statement>;

Megjegyzés:

Az esemény létrehozásával kapcsolatos további információkért tekintse meg a MySQL Eseményütemező dokumentációját itt:

A event_scheduler kiszolgálóparaméter konfigurálása

Az alábbi forgatókönyv bemutatja, hogyan használhatja a paramétert az event_scheduler Azure Database for MySQL-ben. A forgatókönyv bemutatásához tekintse meg az alábbi példát, egy egyszerű táblát:

mysql> describe tab1;
+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+
| id        | int(11)     | NO   | PRI | NULL    | auto_increment |
| CreatedAt | timestamp   | YES  |     | NULL    |                |
| CreatedBy | varchar(16) | YES  |     | NULL    |                |
+-----------+-------------+------+-----+---------+----------------+
3 rows in set (0.23 sec)

A kiszolgálóparaméter Azure event_scheduler Database for MySQL-ben való konfigurálásához hajtsa végre a következő lépéseket:

  1. Az Azure Portalon keresse meg a kiszolgálót, majd a Gépház alatt válassza ki a Kiszolgáló paramétereit.

  2. A Kiszolgálóparaméterek panelen keresse meg event_scheduleraz ÉRTÉK legördülő listában a BE, majd a Mentés lehetőséget.

    Megjegyzés:

    A dinamikus kiszolgálóparaméter konfigurációjának módosítása újraindítás nélkül lesz üzembe helyezve.

  3. Ezután hozzon létre egy eseményt, csatlakozzon a MySQL-kiszolgálóhoz, és futtassa a következő SQL-parancsot:

    CREATE EVENT test_event_01
    ON SCHEDULE EVERY 1 MINUTE
    STARTS CURRENT_TIMESTAMP
    ENDS CURRENT_TIMESTAMP + INTERVAL 1 HOUR
    COMMENT ‘Inserting record into the table tab1 with current timestamp’
    DO
    INSERT INTO tab1(id,createdAt,createdBy)
    VALUES('',NOW(),CURRENT_USER());
    
  4. Az Eseményütemező részleteinek megtekintéséhez futtassa a következő SQL-utasítást:

    SHOW EVENTS;
    

    Az alábbi kimenet jelenik meg:

    mysql> show events;
    +-----+---------------+-------------+-----------+-----------+------------+----------------+----------------+---------------------+---------------------+---------+------------+----------------------+----------------------+--------------------+
    | Db  | Name          | Definer     | Time zone | Type      | Execute at | Interval value | Interval field | Starts              | Ends                | Status  | Originator | character_set_client | collation_connection | Database Collation |
    +-----+---------------+-------------+-----------+-----------+------------+----------------+----------------+---------------------+---------------------+---------+------------+----------------------+----------------------+--------------------+
    | db1 | test_event_01 | azureuser@% | SYSTEM    | RECURRING | NULL       | 1              | MINUTE         | 2023-04-05 14:47:04 | 2023-04-05 15:47:04 | ENABLED | 3221153808 | latin1               | latin1_swedish_ci    | latin1_swedish_ci  |
    +-----+---------------+-------------+-----------+-----------+------------+----------------+----------------+---------------------+---------------------+---------+------------+----------------------+----------------------+--------------------+
    1 row in set (0.23 sec)
    
  5. Néhány perc elteltével a tábla sorait lekérdezve megkezdheti a percenként beszúrt sorok megtekintését a event_scheduler konfigurált paraméter szerint:

    mysql> select * from tab1;
    +----+---------------------+-------------+
    | id | CreatedAt           | CreatedBy   |
    +----+---------------------+-------------+
    |  1 | 2023-04-05 14:47:04 | azureuser@% |
    |  2 | 2023-04-05 14:48:04 | azureuser@% |
    |  3 | 2023-04-05 14:49:04 | azureuser@% |
    |  4 | 2023-04-05 14:50:04 | azureuser@% |
    +----+---------------------+-------------+
    4 rows in set (0.23 sec)
    
  6. Egy óra elteltével futtasson egy Select utasítást a táblán a táblázatba percenként beszúrt értékek teljes eredményének megtekintéséhez az event_scheduler esetünkben konfigurált módon.

    mysql> select * from tab1;
    +----+---------------------+-------------+
    | id | CreatedAt           | CreatedBy   |
    +----+---------------------+-------------+
    |  1 | 2023-04-05 14:47:04 | azureuser@% |
    |  2 | 2023-04-05 14:48:04 | azureuser@% |
    |  3 | 2023-04-05 14:49:04 | azureuser@% |
    |  4 | 2023-04-05 14:50:04 | azureuser@% |
    |  5 | 2023-04-05 14:51:04 | azureuser@% |
    |  6 | 2023-04-05 14:52:04 | azureuser@% |
    ..< 50 lines trimmed to compact output >..
    | 56 | 2023-04-05 15:42:04 | azureuser@% |
    | 57 | 2023-04-05 15:43:04 | azureuser@% |
    | 58 | 2023-04-05 15:44:04 | azureuser@% |
    | 59 | 2023-04-05 15:45:04 | azureuser@% |
    | 60 | 2023-04-05 15:46:04 | azureuser@% |
    | 61 | 2023-04-05 15:47:04 | azureuser@% |
    +----+---------------------+-------------+
    61 rows in set (0.23 sec)
    

Egyéb forgatókönyvek

Az eseményt az adott forgatókönyv követelményei alapján állíthatja be. Néhány hasonló példa az SQL-utasítások különböző időközönként történő futtatásának ütemezésére.

Futtasson most egy SQL-utasítást, és ismételje meg naponta egyszer, befejezés nélkül

CREATE EVENT <event name>
ON SCHEDULE
EVERY 1 DAY
STARTS (TIMESTAMP(CURRENT_DATE) + INTERVAL 1 DAY + INTERVAL 1 HOUR)
COMMENT 'Comment'
DO
<your statement>;

SQL-utasítás futtatása óránként, vége nélkül

CREATE EVENT <event name>
ON SCHEDULE
EVERY 1 HOUR
COMMENT 'Comment'
DO
<your statement>;

SQL-utasítás futtatása minden nap vége nélkül

CREATE EVENT <event name>
ON SCHEDULE 
EVERY 1 DAY
STARTS str_to_date( date_format(now(), '%Y%m%d 0200'), '%Y%m%d %H%i' ) + INTERVAL 1 DAY
COMMENT 'Comment'
DO
<your statement>;

Nem konfigurálható kiszolgálóparaméterek

A következő kiszolgálóparaméterek nem konfigurálhatók a szolgáltatásban:

Paraméter Rögzített érték
innodb_file_per_table az alapszinten KI
innodb_flush_log_at_trx_commit 0
sync_binlog 1
innodb_log_file_size 256 MB
innodb_log_files_in_group 2

Az itt nem szereplő egyéb változók az alapértelmezett MySQL-értékekre vannak beállítva. Tekintse meg a MySQL-dokumentumokat a 8.0-s, 5.7-ös és 5.6-os verziókhoz.

További lépések