Beperkingen in Azure Database for MySQL - Flexibele server
In dit artikel worden beperkingen in Azure Database for MySQL - Flexible Server beschreven. Algemene beperkingen in de MySQL-database-engine zijn ook van toepassing. Als u meer wilt weten over resourcebeperkingen (compute, geheugen, opslag), raadpleegt u het artikel over rekenkracht en opslag.
Serverparameters
Azure Database for MySQL - Flexible Server ondersteunt het afstemmen van de waarden van serverparameters. De minimum- en maximumwaarden van bepaalde parameters (bijvoorbeeld max_connections
, join_buffer_size
) query_cache_size
worden bepaald door de rekenlaag en voordat u de grootte van de server berekent. Zie het artikel over serverparameters voor meer informatie over deze limieten, samen met minimum- en maximumwaarden voor serverparameters, zoals max_connections
eninnodb_buffer_pool_size
.
Gegenereerde onzichtbare primaire sleutels
Voor MySQL-versie 8.0 en hoger zijn gegenereerde onzichtbare primaire sleutels (GIPK's) standaard ingeschakeld voor alle Exemplaren van Azure Database for MySQL - Flexible Server.
MySQL 8.0+-servers voegen de onzichtbare kolom my_row_id
toe aan de tabellen en een primaire sleutel in die kolom, waarbij de InnoDB-tabel zonder expliciete primaire sleutel wordt gemaakt. Daarom kunt u geen tabel maken met een kolom met de naam my_row_id
, tenzij de instructie voor het maken van tabellen ook een expliciete primaire sleutel opgeeft. Meer informatie.
Standaard worden GIPK's weergegeven in de uitvoer van SHOW CREATE TABLE, SHOW COLUMNS en SHOW INDEX. GIPK's zijn ook zichtbaar in de INFORMATION_SCHEMA
tabellen KOLOMMEN en STATISTIEKEN .
Zie Gegevens repliceren naar Azure Database for MySQL - Flexible Server voor meer informatie over GIPK's en hun use cases met replicatie van gegevens.
Stappen voor het uitschakelen van een GIPK
Als u een GIPK wilt uitschakelen, hebt u twee opties:
Wijzig de waarde van de sql_generate_invisible_primary_key-serverparameter
OFF
in met behulp van Azure Portal of de Azure CLI.Maak verbinding met uw Azure Database for MySQL - Flexible Server-exemplaar en voer de volgende opdracht uit:
mysql> SET sql_generate_invisible_primary_key=OFF;
lower_case_table_names
In Azure Database for MySQL - Flexible Server is 1
de standaardwaarde voor lower_case_table_names
MySQL versie 5.7. Als u deze instelling wilt aanpassen, raden we u aan een ondersteuningsticket te maken. Het is belangrijk om te begrijpen dat nadat u de parameterwaarde hebt gewijzigd, de parameterwaarde 2
teruggezet 1
naar niet is toegestaan.
Voor MySQL versie 8.0 is het wijzigen van de lower_case_table_names
instelling nadat de server is geïnitialiseerd, verboden. Meer informatie. In Azure Database for MySQL - Flexible Server is 1
de standaardwaarde voor lower_case_table_names
MySQL versie 8.0. Als u deze parameter 2
wilt wijzigen, raden we u aan een MySQL 5.7-server te maken en een ondersteuningsticket te maken voor hulp bij de wijziging. Later kunt u, indien nodig, de server upgraden naar versie 8.0.
Opslagengines
MySQL ondersteunt veel opslagengines. In de volgende lijsten ziet u welke opslagengines worden ondersteund en niet worden ondersteund in Azure Database for MySQL - Flexible Server.
Ondersteunde engines
Niet-ondersteunde engines
Ondersteuning voor bevoegdheden en gegevensmanipulatie
Veel serverparameters en -instellingen kunnen per ongeluk de prestaties van de server verminderen of de ACID-eigenschappen (atomisch, consistent, geïsoleerd en duurzaam) van de MySQL-server ontkenen. Als u de service-integriteit en de serviceovereenkomst op productniveau wilt behouden, biedt Azure Database for MySQL - Flexible Server niet meerdere rollen.
Azure Database for MySQL - Flexible Server staat geen directe toegang tot het onderliggende bestandssysteem toe. Sommige opdrachten voor gegevensmanipulatie worden niet ondersteund.
Ondersteunde bevoegdheden
LOAD DATA INFILE
wordt ondersteund, maar u moet de[LOCAL]
parameter opgeven en deze doorsturen naar een UNC-pad (Azure-opslag gekoppeld via Server Message Block). Als u MySQL-clientversie 8.0 of hoger gebruikt, moet u de-–local-infile=1
parameter opnemen in uw verbindingsreeks.Voor MySQL versie 8.0 en hoger worden alleen de volgende dynamische bevoegdheden ondersteund:
Niet-ondersteunde bevoegdheden
De rol databasebeheerder (DBA) is beperkt. U kunt ook de rol van de beheerder gebruiken die is toegewezen tijdens het maken van een nieuwe server. Met deze rol kunt u de meeste DDL-instructies (Data Definition Language) en Data Manipulation Language (DML) uitvoeren.
De volgende statische bevoegdheden zijn beperkt:
Het verlenen van BACKUP_ADMIN bevoegdheden wordt niet ondersteund voor het maken van back-ups met behulp van migratiehulpprogramma's.
DEFINER
vereistSUPER
bevoegdheden om te maken en is beperkt. Als u gegevens importeert met behulp van een back-up, verwijdert u deCREATE DEFINER
opdrachten handmatig of gebruikt u de--skip-definer
opdracht wanneer u een mysqlpump-back-up uitvoert.De mysql-systeemdatabase is alleen-lezen en ondersteunt verschillende PaaS-functionaliteiten (Platform as a Service). U kunt geen wijzigingen aanbrengen in de
mysql
systeemdatabase.SELECT ... INTO OUTFILE
wordt niet ondersteund in de service.
Functionele beperkingen
Zone-redundante hoge beschikbaarheid
U kunt een zone-redundante configuratie voor hoge beschikbaarheid alleen instellen tijdens het maken van de server. Deze configuratie wordt niet ondersteund in de Burstable-rekenlaag.
Netwerk
U kunt de verbindingsmethode niet wijzigen nadat u de server hebt gemaakt. Als u de server met privétoegang (integratie van virtueel netwerk) maakt, kan deze niet worden gewijzigd in openbare toegang (toegestane IP-adressen) na het maken en omgekeerd.
Stop-/startbewerkingen
Bewerkingen om de server te stoppen en te starten, worden niet ondersteund met leesreplicaconfiguraties (zowel bron- als replica's).
Schaalbewerkingen
Het verlagen van de ingerichte serveropslag wordt niet ondersteund.
Upgrades van serverversie
Automatische migratie tussen primaire versies van de database-engine wordt niet ondersteund. Als u de primaire versie wilt upgraden, gebruikt u een dump en herstel op een server die u hebt gemaakt met de nieuwe engineversie.
Een server herstellen
Met herstel naar een bepaald tijdstip hebben nieuwe servers dezelfde reken- en opslagconfiguraties als de bronserver waarop ze zijn gebaseerd. U kunt de berekening van de zojuist herstelde server omlaag schalen nadat u de server hebt gemaakt.
Functievergelijkingen
Niet alle functies die beschikbaar zijn in Azure Database for MySQL - Enkele server zijn beschikbaar in Azure Database for MySQL - Flexible Server.
Zie het artikel over het kiezen van de juiste MySQL-serveroptie in Azure voor een volledige lijst met functievergelijkingen tussen Azure Database for MySQL - Enkele server en Azure Database for MySQL - Flexible Server.