Delen via


Aanbevolen procedures voor serverbewerkingen in Azure Database for MySQL - Flexibele server

VAN TOEPASSING OP: Azure Database for MySQL - Enkele server Azure Database for MySQL - Flexibele server

Belangrijk

Azure Database for MySQL enkele server bevindt zich op het buitengebruikstellingspad. We raden u ten zeerste aan een upgrade uit te voeren naar een flexibele Azure Database for MySQL-server. Zie Wat gebeurt er met Azure Database for MySQL Enkele server voor meer informatie over migreren naar Azure Database for MySQL Flexibele server ?

Meer informatie over de aanbevolen procedures voor het werken met Azure Database for MySQL Flexible Server. Naarmate we nieuwe mogelijkheden aan het platform toevoegen, blijven we ons richten op het verfijnen van de aanbevolen procedures die in deze sectie worden beschreven.

Operationele richtlijnen voor Azure Database for MySQL Flexible Server

Hieronder vindt u operationele richtlijnen die moeten worden gevolgd bij het werken met Azure Database for MySQL Flexible Server om de prestaties van uw database te verbeteren:

  • Co-locatie: Als u de netwerklatentie wilt verminderen, plaatst u de client en de databaseserver in dezelfde Azure-regio.

  • Bewaak uw geheugen, CPU en opslaggebruik: u kunt waarschuwingen instellen om u op de hoogte te stellen wanneer gebruikspatronen veranderen of wanneer u de capaciteit van uw implementatie nadert, zodat u de systeemprestaties en beschikbaarheid kunt behouden.

  • Versnelde logboeken voor verbeterde prestaties: het inschakelen van de functie voor versnelde logboeken optimaliseert transactionele logboekbewerkingen, waardoor de doorvoer en prestaties van de server worden verbeterd. Deze functie, zonder extra kosten, is een aanzienlijke aanvulling op operationele aanbevolen procedures voor gebruikers van de servicelaag Bedrijfskritiek.

  • Uw DB-exemplaar omhoog schalen: u kunt omhoog schalen wanneer u de opslagcapaciteitslimieten nadert. U moet een buffer in opslag en geheugen hebben om onvoorziene toenamen van de vraag van uw toepassingen te kunnen opvangen. U kunt ook de functie voor automatisch vergroten van opslag 'AAN' inschakelen om ervoor te zorgen dat de service de opslag automatisch schaalt wanneer deze de opslaglimieten nadert.

  • Back-ups configureren: lokale of geografisch redundante back-ups inschakelen op basis van de vereiste van het bedrijf. U wijzigt ook de bewaarperiode voor hoe lang de back-ups beschikbaar zijn voor bedrijfscontinuïteit.

  • I/O-capaciteit optimaliseren met IOPS voor automatische schaalaanpassing: als voor uw databaseworkload meer I/O is vereist dan is ingericht, zijn herstelbewerkingen of andere transactionele bewerkingen voor uw database traag. Ga op een van de volgende manieren te werk om de I/O-capaciteit van een serverexemplaren te vergroten:

    • IOPS voor automatische schaalaanpassing gebruiken: met IOPS voor automatische schaalaanpassing hoeft u geen specifiek aantal I/O-bewerkingen per seconde vooraf in te richten. In plaats daarvan kan uw server IOPS automatisch aanpassen op basis van workloadvereisten1. Dit betekent dat uw server IOPS automatisch omhoog of omlaag kan schalen, afhankelijk van de behoeften van de workload.

    • Azure Database for MySQL Flexibele server biedt IOPS-schaalaanpassing met de snelheid van drie IOPS per GB-opslag die is ingericht. Verhoog de ingerichte opslag om de IOPS te schalen voor betere prestaties.

    • Als u al ingerichte IOPS-opslag gebruikt, moet u extra doorvoercapaciteit inrichten.

  • Rekenkracht schalen: de databaseworkload kan ook worden beperkt vanwege CPU of geheugen en dit kan ernstige gevolgen hebben voor de transactieverwerking. Rekenkracht (prijscategorie) kan alleen omhoog of omlaag worden geschaald tussen de lagen Algemeen gebruik of Geoptimaliseerd voor geheugen .

  • Test op failover: test de failover handmatig voor uw serverexemplaren om te begrijpen hoe lang het proces duurt voor uw use-case en om ervoor te zorgen dat de toepassing die toegang heeft tot uw serverexemplaren, automatisch verbinding kan maken met het nieuwe serverexemplaren na een failover.

  • Gebruik de primaire sleutel: zorg ervoor dat uw tabellen een primaire of unieke sleutel hebben terwijl u werkt op het exemplaar van Azure Database for MySQL Flexible Server. Dit helpt bij het maken van back-ups, replica's enzovoort en verbetert de prestaties.

  • TTL-waarde configureren: als uw clienttoepassing de DNS-gegevens (Domain Name Service) van uw serverexemplaren in de cache opstuurt, stelt u een TTL-waarde (Time-to-Live) in van minder dan 30 seconden. Omdat het onderliggende IP-adres van een serverexemplaren kan worden gewijzigd na een failover, kan het opslaan van de DNS-gegevens gedurende een langere periode leiden tot verbindingsfouten als uw toepassing verbinding probeert te maken met een IP-adres dat niet meer in de service is.

  • Gebruik groepsgewijze verbindingen om te voorkomen dat de maximale verbindingslimietenworden bereikt en gebruik logica voor opnieuw proberen om onregelmatige verbindingsproblemen te voorkomen.

  • Als u replica gebruikt, gebruikt u ProxySQL om de belasting tussen de primaire server en de leesbare secundaire replicaserver te verdelen. Bekijk hier de installatiestappen.

  • Zorg er bij het inrichten van de resource voor dat u de automatische groei hebt ingeschakeld voor uw Azure Database for MySQL Flexible Server-exemplaar. Hiermee worden geen extra kosten toegevoegd en worden de database beschermd tegen eventuele knelpunten in de opslag die u kunt tegenkomen.

InnoDB gebruiken met Azure Database for MySQL Flexibele server

  • Als u een functie gebruikt ibdata1 , wat een bestandssysteemtabelruimtegegevensbestand is, kan het niet worden verkleind of verwijderd door de gegevens uit de tabel te verwijderen of door de tabel naar bestand per tabel tablespaceste verplaatsen.

  • Voor een database die groter is dan 1 TB, moet u de tabel maken in innodb_file_per_tabletablespace. Voor één tabel die groter is dan 1 TB in grootte, moet u de partitietabel gebruiken.

  • Voor een server met een groot aantal is het opstarten van tablespacede engine erg traag vanwege de sequentiële tabelruimtescan tijdens het opstarten of failover van Azure Database for MySQL Flexible Server.

  • Stel innodb_file_per_table = AAN in voordat u een tabel maakt, als het totale tabelnummer kleiner is dan 500.

  • Als u meer dan 500 tabellen in een database hebt, controleert u de tabelgrootte voor elke afzonderlijke tabel. Voor een grote tabel moet u nog steeds overwegen om de tabelruimte bestand per tabel te gebruiken om te voorkomen dat het bestandssysteemtabelbestand de maximale opslaglimiet bereikt.

Notitie

Voor tabellen met een grootte van minder dan 5 GB kunt u overwegen de systeemtabelruimte te gebruiken

   CREATE TABLE tbl_name ... *TABLESPACE* = *innodb_system*;
  • Partitioneer de tabel bij het maken van een tabel als u een grote tabel hebt, mogelijk groter dan 1 TB.

  • Gebruik meerdere exemplaren van Azure Database for MySQL Flexible Server en verspreid de tabellen over deze servers. Vermijd het plaatsen van te veel tabellen op één server als u ongeveer 10.000 tabellen of meer hebt.

Volgende stappen