Auf dieser Seite wird das Erstellen einer Cloud SQL für MySQL-Instanz beschrieben.
Ausführliche Informationen über alle Instanzeinstellungen finden Sie unter Instanzeinstellungen.
Eine neu erstellte Instanz hat vier Systemdatenbanken:
information_schema
: Bietet Zugriff auf Datenbankmetadaten, Informationen über den MySQL-Server.mysql
: Das Systemschema. Es enthält Tabellen, in denen Informationen gespeichert sind, die der MySQL-Server während der Ausführung benötigt.performance_schema
: Ein Feature, um die Ausführung des MySQL-Servers auf niedriger Ebene zu überwachen.sys
: Enthält eine Reihe von Objekten, die Datenbankadministratoren und Entwickler bei der Interpretation der vom Leistungsschema erfassten Daten unterstützen.
Hinweis
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Achten Sie darauf, dass Sie für Ihr Nutzerkonto die Rollen "Cloud SQL-Administrator" und "Compute-Betrachter" haben.
MySQL-Instanz erstellen
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Klicken Sie auf Instanz erstellen.
- Klicken Sie im Bereich Datenbankmodul auswählen der Seite Instanz erstellen auf MySQL auswählen.
- Geben Sie im Feld Instanz-ID des Bereichs Instanzinformationen eine ID für Ihre Instanz ein.
Die Projekt-ID muss im Instanznamen nicht angegeben werden. Dies erfolgt automatisch, wo es erforderlich ist, beispielsweise in den Logdateien.
- Legen Sie ein Passwort für den Root-Nutzer fest.
Es gibt zwar die Option Kein Passwort, diese wird aber aus Sicherheitsgründen nicht empfohlen.
Optional: Konfigurieren Sie eine Passwortrichtlinie für die Instanz:
- Setzen Sie das Häkchen für Passwortrichtlinien aktivieren. .
- Klicken Sie auf die Schaltfläche Passwortrichtlinie festlegen, legen Sie eine oder mehrere der folgenden Optionen fest und klicken Sie auf Speichern.
- Mindestlänge: Gibt die Mindestanzahl an Zeichen an, die das Passwort haben muss.
- Komplexität des Passworts: Prüft, ob das Passwort eine Kombination aus Kleinbuchstaben, Großbuchstaben, numerischen und nicht alphanumerischen Zeichen ist.
- Wiederverwendung von Passwörtern einschränken: Gibt die Anzahl vorheriger Passwörter an, die nicht wiederverwendet werden können.
Wird nur für Cloud SQL for MySQL 8.0 und neuer unterstützt.
- Nutzernamen nicht zulassen: Verhindert die Verwendung des Nutzernamens im Passwort.
- Wählen Sie die Datenbankversion für Ihre Instanz aus: MySQL 8.4, MySQL 8.0 (Standard), MySQL 5.7 oder MySQL 5.6.
- Optional: Wählen Sie Nebenversionen anzeigen aus. Wählen Sie dann eine Nebenversion als die Nebenversion aus.
- Wählen Sie die Cloud SQL-Version für Ihre Instanz aus:
Enterprise
oderEnterprise plus
. Weitere Informationen zu den Cloud SQL-Versionen finden Sie unter Einführung in die Cloud SQL-Versionen. - Wählen Sie im Abschnitt Region und zonale Verfügbarkeit auswählen die Region und die Zone für Ihre Instanz aus.
Die Verfügbarkeit der Region kann je nach Cloud SQL-Version variieren. Weitere Informationen finden Sie unter Instanzeinstellungen.
Platzieren Sie die Instanz in der Region, in der sich auch die Ressourcen befinden, die darauf zugreifen. Die ausgewählte Region kann später nicht mehr geändert werden. In den meisten Fällen müssen Sie keine Zone angeben.
Wenn Sie eine Instanz für Hochverfügbarkeit konfigurieren, können Sie sowohl eine primäre als auch eine sekundäre Zone auswählen.
Die folgenden Bedingungen gelten, wenn die sekundäre Zone während der Instanzerstellung verwendet wird:
- Die Zonen verwenden standardmäßig
Any
für die primäre Zone undAny (different from primary)
für die sekundäre Zone. - Wenn sowohl die primäre als auch die sekundäre Zone angegeben sind, müssen sie unterschiedliche Zonen sein.
- Die Zonen verwenden standardmäßig
- Ändern Sie im Bereich Instanz anpassen die Einstellungen für Ihre Instanz.
Klicken Sie zuerst auf KONFIGURATIONSOPTIONEN EINBLENDEN, um die Gruppe der Einstellungen aufzurufen. Erweitern Sie dann die gewünschten Gruppen, um die Einstellungen zu überprüfen und anzupassen.
Rechts sehen Sie eine Zusammenfassung aller Optionen, die Sie auswählen.
Das Anpassen dieser Instanzeinstellungen ist optional. Standardwerte werden immer zugewiesen, wenn keine Anpassungen vorgenommen werden.
Die folgende Tabelle enthält eine Kurzreferenz zu den Instanzeinstellungen. Weitere Informationen zu den einzelnen Einstellungen finden Sie auf der Seite zu den Instanzeinstellungen.
Einstellung Hinweise Maschinentyp Maschinentyp Wählen Sie zwischen „Gemeinsam genutzter Kern“ oder „Dedizierter Kern“ aus. Bei gemeinsam genutztem Kern wird jeder Maschinentyp nach der Anzahl der CPUs (Kerne) und der Größe des Arbeitsspeichers für Ihre Instanz klassifiziert. Kerne Die Anzahl der vCPUs für Ihre Instanz. Weitere Informationen Speicher Die Menge an Arbeitsspeicher für Ihre Instanz in GB. Weitere Informationen Benutzerdefiniert Wählen Sie für den Maschinentyp „Dedizierter Kern“ die Schaltfläche Benutzerdefiniert aus, um eine Instanz mit einer benutzerdefinierten Konfiguration zu erstellen. Wenn Sie diese Option auswählen, müssen Sie die Anzahl der Kerne und den Speicherplatz für die Instanz auswählen. Weitere Informationen Speicherplatz Speichertyp Bestimmt, ob die Instanz einen SSD- oder HDD-Speicher verwendet. Weitere Informationen Speicherkapazität Die bereitgestellte Speicherkapazität für die Instanz. Weitere Informationen Automatische Speichererhöhungen aktivieren Legt fest, ob über Cloud SQL automatisch mehr Speicherkapazität für die Instanz bereitgestellt wird, wenn wenig freier Speicherplatz verfügbar ist. Weitere Informationen Verschlüsselung Von Google verwaltete Verschlüsselung Die Standardoption. Vom Kunden verwalteter Verschlüsselungsschlüssel (CMEK) Auswählen, um Ihren Schlüssel mit dem Google Cloud Key Management Service zu verwenden. Weitere Informationen Verbindungen Private IP-Adresse Fügt Ihrer Instanz eine private IP-Adresse hinzu. Um eine Verbindung zur Instanz herstellen zu können, ist eine zusätzliche Konfiguration erforderlich.
Optional können Sie einen zugewiesenen IP-Bereich für Ihre Instanzen angeben, der für Verbindungen verwendet werden soll.- Maximieren Sie die Option Zugewiesenen IP-Bereich anzeigen.
- Wählen Sie einen IP-Bereich aus dem Drop-down-Menü aus.
Die Instanz kann sowohl eine öffentliche als auch eine private IP-Adresse haben.
- Mehr über Private IP-Adressenerfahren.
- Weitere Informationen zu zugewiesenen IP-Adressbereichen
Öffentliche IP-Adresse Fügt Ihrer Instanz eine öffentliche IP-Adresse hinzu. Sie können dann autorisierte Netzwerke hinzufügen, um eine Verbindung zur Instanz herzustellen. Die Instanz kann sowohl eine öffentliche als auch eine private IP-Adresse haben.
Mehr über Öffentliche IP-Adressen verwenden erfahren.
Autorisierte Netzwerke Geben Sie den Namen für das neue Netzwerk und die Netzwerkadresse ein. Weitere Informationen
Privater Pfad für Google Cloud-Dienste Wenn Sie dieses Kästchen anklicken, können andere Google Cloud-Dienste wie BigQuery auf Daten in Cloud SQL zugreifen und über eine private Verbindung Abfragen an diese Daten senden.
Datenschutz Automatische Sicherungen Das Zeitfenster, in dem Sicherungen gestartet werden sollen. Weitere Informationen Wählen Sie den Speicherort für Ihre Sicherungen aus Wählen Sie für die meisten Anwendungsfälle "Multiregion" aus. Wenn Sie Sicherungen in einer bestimmten Region speichern müssen, beispielsweise aus regulatorischen Gründen, wählen Sie Region und anschließend Ihre Region aus dem Drop-down-Menü "Standort" aus. Wählen Sie aus, wie viele automatische Sicherungen gespeichert werden sollen Die Anzahl der automatischen Sicherungen, die Sie aufbewahren möchten (von 1 bis 365 Tagen). Weitere Informationen Wiederherstellung zu einem bestimmten Zeitpunkt aktivieren Ermöglicht die Wiederherstellung zu einem bestimmten Zeitpunkt und Write-Ahead-Logging. Weitere Informationen Löschschutz aktivieren Bestimmt, ob eine Instanz vor versehentlichem Löschen geschützt wird. Weitere Informationen Wählen Sie aus, wie viele Tage die Logs aufbewahrt werden sollen Konfigurieren Sie die Aufbewahrung von Write-Ahead-Logs von 1 bis 7 Tagen. Die Standardeinstellung ist 7 Tage. Weitere Informationen Wartung Bevorzugtes Fenster Ein Zeitfenster von einer Stunde, in dem von Cloud SQL tief greifende Wartungsaufgaben für die Instanz durchgeführt werden können. Wenn Sie dieses Zeitfenster nicht festlegen, können jederzeit Wartungsaufgaben mit Betriebsunterbrechung durchgeführt werden. Weitere Informationen Reihenfolge der Updates Die bevorzugte Zeit für Aktualisierungen der Instanz relativ zu anderen Instanzen im selben Projekt. Weitere Informationen Flags FLAG HINZUFÜGEN Mit Datenbank-Flags können Sie Einstellungen und Parameter für Ihre Instanz festlegen. Weitere Informationen Labels LABEL HINZUFÜGEN Fügen Sie für jedes hinzugefügte Label einen Schlüssel und einen Wert hinzu. Mit Labels können Sie Ihre Instanzen organisieren. Datencache Daten-Cache aktivieren (optional) Aktiviert den Datencache für Cloud SQL for MySQL Enterprise Plus-Instanzen. Weitere Informationen zum Daten-Cache finden Sie unter Daten-Cache. -
Klicken Sie auf Instanz erstellen.
Hinweis: Das Erstellen der Instanz kann einige Minuten dauern. Sie können jedoch Informationen über die Instanz abrufen, während sie erstellt wird.
Klicken Sie auf das Symbol Passwort anzeigen, um das Passwort als Klartext anzusehen.
Sie können das Passwort entweder manuell eingeben oder auf Generieren klicken, damit Cloud SQL automatisch ein Passwort erstellt.
Die Datenbankversion kann nicht bearbeitet werden, nachdem die Instanz erstellt wurde.
gcloud
Informationen zur Installation und den ersten Schritten mit der gcloud CLI finden Sie unter gcloud CLI installieren. Informationen zum Starten von Cloud Shell finden Sie in der Cloud Shell-Dokumentation.
- Erstellen Sie die Instanz mit dem Befehl
gcloud sql instances create
: - Der Wert für vCPUs muss entweder 1 oder eine gerade Zahl im Bereich von 2 bis 32 sein.
- Der Wert für Speicher muss folgender sein:
- Pro vCPU sind 0,9 bis 6,5 GB zulässig
- Muss ein Vielfaches von 256 MB sein
- Muss mindestens 3,75 GB (3.840 MB) sein
- Die Zonen müssen gültige Zonen sein.
- Wenn die sekundäre Zone angegeben ist, muss auch die primäre Zone angegeben werden.
- Wenn die primäre und sekundäre Zone angegeben ist, müssen sie unterschiedliche Zonen sein.
- Wenn die primäre und sekundäre Zone angegeben ist, müssen sie derselben Region angehören.
- Sie verwenden den Parameter
--no-assign-ip
. - Sie geben mit dem Parameter
--network
den Namen des VPC-Netzwerks an, das Sie zum Erstellen einer privaten Verbindung verwenden möchten. GOOGLE_MANAGED_INTERNAL_CA
: Dies ist der Standardwert. Bei dieser Option signiert eine interne Zertifizierungsstelle, die jeder Cloud SQL-Instanz zugewiesen ist, das Serverzertifikat für diese Instanz.GOOGLE_MANAGED_CAS_CA
: Mit dieser Option wird eine CA-Hierarchie aus einer Stamm-CA und untergeordneten Server-CAs verwendet, die von Cloud SQL verwaltet und auf dem Google Cloud Certificate Authority Service (CA Service) gehostet werden. Die untergeordneten Server-CAs in einer Region signieren die Serverzertifikate und werden für alle Instanzen in der Region freigegeben. Diese Option wird nur von MySQL 8.0.30 und höher unterstützt.- Die Zonen müssen gültige Zonen sein.
- Wenn die sekundäre Zone angegeben ist, muss auch die primäre Zone angegeben werden.
- Notieren Sie die automatisch zugewiesene IP-Adresse.
Falls Sie nicht den Cloud SQL Auth-Proxy verwenden, nutzen Sie diese Adresse als Hostadresse, mit der Ihre Anwendungen oder Tools eine Verbindung zu der Instanz herstellen.
- Legen Sie das Passwort für den MySQL-Nutzer „root@%“ fest:
gcloud sql users set-password root \ --host=% \ --instance INSTANCE_NAME \ --password PASSWORD
Für Cloud SQL Enterprise Plus-Instanzen:
gcloud sql instances create INSTANCE_NAME \ --region=REGION \ --tier=TIER \ --database-version=DATABASE_VERSION \ --edition=ENTERPRISE_PLUS
Für Cloud SQL Enterprise-Instanzen:
gcloud sql instances create INSTANCE_NAME \ --cpu=NUMBER_CPUS \ --memory=MEMORY_SIZE \ --region=REGION
--tier
verwenden, wenn Sie db-f1-micro oder db-g1-small als Maschinentyp auswählen:
gcloud sql instances create INSTANCE_NAME \ --tier=API_TIER_STRING \ --region=REGION
Es gelten Beschränkungen der Werte für vCPUs und Speichergröße:
Mit dem folgenden Befehl wird beispielsweise eine Cloud SQL Enterprise-Instanz mit zwei vCPUs und 7.680 MB Arbeitsspeicher erstellt:
gcloud sql instances create myinstance \ --database-version=MYSQL_8_0 \ --cpu=2 \ --memory=7680MB \ --region=us-central1
Mit dem folgenden Befehl wird eine Cloud SQL Enterprise Plus-Instanz mit vier Kernen erstellt:
gcloud sql instances create myinstance \ --database-version=MYSQL_8_0_31 \ --tier=db-perf-optimized-N-4 \ --edition=ENTERPRISE_PLUS \ --region=us-central1
Der Standardwert für REGION ist us-central1
.
Der Instanzname sollte keine vertraulichen Informationen oder personenbezogenen Daten enthalten, da er extern sichtbar ist.
Die Projekt-ID muss im Instanznamen nicht angegeben werden. Dies erfolgt automatisch, wo es erforderlich ist, beispielsweise in den Logdateien.
Wenn Sie eine Instanz für Hochverfügbarkeit erstellen, können Sie die primäre und sekundäre Zone mithilfe der Parameter --zone
und --secondary-zone
angeben. Die folgenden Bedingungen gelten, wenn die sekundäre Zone während der Erstellung oder Bearbeitung einer Instanz verwendet wird:
Sie können mehrere Parameter hinzufügen, um andere Instanzeinstellungen festzulegen:
Einstellung | Parameter | Hinweise |
---|---|---|
Erforderliche Parameter | ||
Datenbankversion | --database-version |
Die Datenbankversion, die auf Ihrer Cloud SQL-Version basiert. |
Region | --region |
Gültige Werte ansehen |
Passwortrichtlinie festlegen | ||
Passwortrichtlinie aktivieren | --enable-password-policy |
Aktiviert die Passwortrichtlinie, wenn sie verwendet wird. Standardmäßig ist die Passwortrichtlinie deaktiviert.
Bei Deaktivierung mit dem Parameter --clear-password-policy werden die anderen Parameter für die Passwortrichtlinie zurückgesetzt.
. |
Mindestlänge | --password-policy-min-length |
Gibt die Mindestanzahl an Zeichen an, die das Passwort haben muss. |
Komplexität des Passworts | --password-policy-complexity |
Aktiviert die Prüfung der Passwortkomplexität, ob das Passwort jeweils einen der folgenden Zeichentypen enthält: Kleinbuchstaben, Großbuchstaben, numerische und nicht alphanumerische Zeichen. Legen Sie den Wert auf COMPLEXITY_DEFAULT fest. |
Wiederverwendung von Passwörtern einschränken | --password-policy-reuse-interval |
Gibt die Anzahl vorheriger Passwörter an, die nicht wiederverwendet werden können. Wird nur für Cloud SQL for MySQL 8.0 und neuer unterstützt. |
Nutzernamen nicht zulassen | --password-policy-disallow-username-substring |
Verhindert die Verwendung des Nutzernamens im Passwort. Mit dem Parameter --no-password-policy-disallow-username-substring können Sie die Prüfung deaktivieren. |
Verbindung | ||
Private IP-Adresse | --network
|
--network : gibt den Namen des VPC-Netzwerks an, das für die Instanz verwendet werden soll. Der Zugriff auf private Dienste muss bereits für das Netzwerk konfiguriert sein. Dies ist nur für den Betabefehl (gcloud beta sql instances create ) verfügbar.
Dieser Parameter ist nur in folgenden Fällen gültig: |
Öffentliche IP-Adresse | --authorized-networks |
Bei öffentlichen IP-Verbindungen können Verbindungen mit der Instanz nur über autorisierte Netzwerke hergestellt werden. Weitere Informationen |
SSL-Erzwingung |
|
Der Parameter Der Parameter |
Server-CA-Modus | --server-ca-mode |
Mit dem Flag Die Verwendung des |
Maschinentyp und Speicher | ||
Maschinentyp | --tier |
Wird verwendet, um eine Instanz mit gemeinsam genutztem Kern anzugeben (db-f1-micro oder db-g1-small ). Verwenden Sie für eine benutzerdefinierte Instanzkonfiguration stattdessen die Parameter --cpu oder --memory . Siehe Benutzerdefinierte Instanzkonfiguration.
|
Speichertyp | --storage-type |
Bestimmt, ob die Instanz einen SSD- oder HDD-Speicher verwendet. Weitere Informationen |
Speicherkapazität | --storage-size |
Die Menge an bereitgestelltem Speicherplatz für die Instanz in GB. Weitere Informationen |
Automatische Speichererweiterung | --storage-auto-increase |
Legt fest, ob über Cloud SQL automatisch mehr Speicherkapazität für die Instanz bereitgestellt wird, wenn wenig freier Speicherplatz verfügbar ist. Weitere Informationen |
Automatische Begrenzung der Speichererweiterung | --storage-auto-increase-limit |
Bestimmt, um wie viel der Speicherplatz von Cloud SQL automatisch erhöht werden kann.
Dies ist nur für den Betabefehl (gcloud beta sql instances create ) verfügbar.
Weitere Informationen
|
Datencache (optional) | --enable-data-cache |
Aktiviert oder deaktiviert den Datencache für Instanzen. Weitere Informationen finden Sie unter Datencache. |
Automatische Sicherungen und Hochverfügbarkeit | ||
Hochverfügbarkeit | --availability-type |
Legen Sie für eine Instanz mit Hochverfügbarkeit hierfür den Wert REGIONAL fest.
Weitere Informationen |
Sekundäre Zone | --secondary-zone |
Wenn Sie eine Instanz für Hochverfügbarkeit erstellen, können Sie mit --zone und --secondary-zone parameters sowohl die primäre als auch die sekundäre Zone angeben. Die folgenden Einschränkungen gelten, wenn die sekundäre Zone bei der Erstellung oder Bearbeitung von Instanzen verwendet wird:
Wenn die primäre und sekundäre Zone angegeben ist, müssen sie unterschiedliche Zonen sein. Wenn die primäre und sekundäre Zone angegeben ist, müssen sie derselben Region angehören. |
Automatische Sicherungen | --backup-start-time |
Das Zeitfenster, in dem Sicherungen gestartet werden sollen. Weitere Informationen |
Einstellungen für die Aufbewahrung von automatischen Sicherungen | --retained-backups-count |
Die Anzahl der automatischen Sicherungen, die aufbewahrt werden sollen. Weitere Informationen |
Binär-Logging | --enable-bin-log |
Binär-Logging ermöglicht Replikationen und Wiederherstellungen zu einem bestimmten Zeitpunkt. Weitere Informationen |
Einstellungen für die Aufbewahrung von binären Logs | --retained-transaction-log-days |
Die Anzahl der Tage, die Binärlogs für die Wiederherstellung zu einem bestimmten Zeitpunkt aufbewahrt werden sollen. Weitere Informationen |
Datenbank-Flags hinzufügen | ||
Datenbank-Flags | --database-flags |
Mit Datenbank-Flags können Sie Einstellungen und Parameter für Ihre Instanz festlegen. Weitere Informationen zu Datenbank-Flags. Hier finden Sie Informationen zum Format dieses Parameters. |
Wartungsplan | ||
Wartungsfenster | --maintenance-window-day ,
--maintenance-window-hour |
Legt ein Zeitfenster von einer Stunde fest, in dem von Cloud SQL eine Wartung mit Betriebsunterbrechung an der Instanz ausgeführt werden kann. Wenn Sie dieses Zeitfenster nicht festlegen, können solche Wartungsaufgaben jederzeit durchgeführt werden. Weitere Informationen |
Wartungszeitpunkt | --maintenance-release-channel |
Die bevorzugte Zeit für Aktualisierungen der Instanz relativ zu anderen Instanzen im selben Projekt. Verwenden Sie preview für frühere Aktualisierungen und production für spätere Aktualisierungen.
Weitere Informationen
|
Terraform
Verwenden Sie zum Erstellen einer Instanz eine Terraform-Ressource.
Änderungen anwenden
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Google Cloud-Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Google Cloud-Standardprojekt fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tf
haben, z. B.main.tf
. In dieser Anleitung wird die Datei alsmain.tf
bezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf
.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgrade
ein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yes
an der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Google Cloud-Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Google Cloud Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
Änderungen löschen
So löschen Sie das Projekt:
- Um den Löschschutz zu deaktivieren, setzen Sie in der Terraform-Konfigurationsdatei das Argument
deletion_protection
auffalse
.deletion_protection = "false"
- Wenden Sie die aktualisierte Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yes
an der Eingabeaufforderung ein:terraform apply
-
Entfernen Sie Ressourcen, die zuvor mit Ihrer Terraform-Konfiguration angewendet wurden, indem Sie den folgenden Befehl ausführen und
yes
an der Eingabeaufforderung eingeben:terraform destroy
REST Version 1
Die Instanz erstellen
In diesem Beispiel wird eine Instanz erstellt. Einige optionale Parameter wie Sicherungen und binäres Logging sind ebenfalls enthalten. Eine vollständige Liste der Parameter für diesen Aufruf finden Sie auf der Seite Instanzen: insert. Informationen zu den Instanzeinstellungen, einschließlich der gültigen Werte für die Region, erhalten Sie unter Instanzeinstellungen.
Die Instanz-ID sollte keine vertraulichen oder personenbezogenen Informationen enthalten, da sie extern sichtbar ist.
Die Projekt-ID muss im Instanznamen nicht angegeben werden. Dies erfolgt automatisch, wo es erforderlich ist, beispielsweise in den Logdateien.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- INSTANCE_ID: Ihre Instanz-ID.
- DATABASE_VERSION: Die Datenbankversion.
Beispiel:
MYSQL_8_4
oderMYSQL_8_0_37
Wenn Sie keine Datenbankversion angeben, wird die StandarddatenbankversionMYSQL_8_0
verwendet. - REGION: Die Region.
- MACHINE_TYPE: Ihr Maschinentyp.
- EDITION_TYPE: Ihre Cloud SQL-Version
- DATA_CACHE_ENABLED: (Optional) Auf
true
gesetzt, um den Datencache für Ihre Instanz zu aktivieren - PRIVATE_NETWORK: Geben Sie den Namen des VPC-Netzwerks (Virtual Private Cloud) an, das Sie für diese Instanz verwenden möchten. Der Zugriff auf private Dienste muss bereits für das Netzwerk konfiguriert sein.
- AUTHORIZED_NETWORKS: Geben Sie für öffentliche IP-Verbindungen die Verbindungen aus autorisierten Netzwerken an, die eine Verbindung zu Ihrer Instanz herstellen können.
- CA_MODE: Geben Sie eine Zertifizierungsstellenhierarchie für die Instanz an, entweder
GOOGLE_MANAGED_INTERNAL_CA
oderGOOGLE_MANAGED_CAS_CA
. Wenn SieserverCaMode
nicht angeben, wird die StandardkonfigurationGOOGLE_MANAGED_INTERNAL_CA
verwendet. Diese Funktion befindet sich in der Vorabversion.
Wenn Sie eine Passwortrichtlinie beim Erstellen der Instanz festlegen möchten, fügen Sie das passwordValidationPolicy-Objekt in die Anfrage ein. Legen Sie nach Bedarf die folgenden Parameter fest:
enablePasswordPolicy
: Aktiviert die Passwortrichtlinie, wenn dafürtrue
abgegeben ist.Um die Passwortrichtlinie zu entfernen, verwenden Sie eine
PATCH
-Anfrage mitnull
fürenablePasswordPolicy
. In diesem Fall werden die anderen Parameter der Passwortrichtlinie zurückgesetzt.minLength
: Gibt die Mindestanzahl an Zeichen an, die das Passwort haben muss.complexity
: Prüft, ob das Passwort eine Kombination aus Kleinbuchstaben, Großbuchstaben, numerischen und nicht alphanumerischen Zeichen ist. Der Standardwert istCOMPLEXITY_DEFAULT
.reuseInterval
: Gibt die Anzahl vorheriger Passwörter an, die nicht wiederverwendet werden können.Wird nur für Cloud SQL for MySQL 8.0 und neuer unterstützt.
disallowUsernameSubstring
: Verhindert die Verwendung des Nutzernamens im Passwort, wenn dafürtrue
festgelegt ist.
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
JSON-Text anfordern:
{ "name": "INSTANCE_ID", "region": "REGION", "databaseVersion": "DATABASE_VERSION", "settings": { "tier": "MACHINE_TYPE", "edition": "EDITION_TYPE", "dataCacheConfig" = { "dataCacheEnabled": DATA_CACHE_ENABLED }, "backupConfiguration": { "binaryLogEnabled": true, "enabled": true }, "passwordValidationPolicy": { "enablePasswordPolicy": true "minLength": "MIN_LENGTH", "complexity": COMPLEXITY_DEFAULT, "reuseInterval": "REUSE_INTERVAL", "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING", } "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [AUTHORIZED_NETWORKS], "ipv4Enabled": false, "enablePrivatePathForGoogleCloudServices": true, "serverCaMode": "CA_MODE" } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2019-09-25T22:19:33.735Z", "operationType": "CREATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
Die Antwort ist ein Vorgang mit langer Ausführungszeit, der einige Minuten dauern kann.
Root-Passwort aktualisieren
Aktualisieren Sie nach der Initialisierung der Instanz das Root-Passwort:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID.
- instance-id: die Instanz-ID, die im vorherigen Schritt erstellt wurde
- root-password: das gewünschte Root-Passwort
HTTP-Methode und URL:
PUT https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?host=%25&name=root
JSON-Text anfordern:
{ "name": "root", "host": "%", "password": "root-password" }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id", "status": "DONE", "user": "user@example.com", "insertTime": "2019-09-26T14:32:30.592Z", "startTime": "2019-09-26T14:32:30.594Z", "endTime": "2019-09-26T14:32:33.518Z", "operationType": "UPDATE_USER", "name": "operation-id", "targetId": "instance-id", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id", "targetProject": "project-id" }
IPv4-Adresse abrufen
Rufen Sie die automatisch zugewiesene IPv4-Adresse für die neue Instanz ab:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID.
- instance-id: die Instanz-ID, die im vorherigen Schritt erstellt wurde
HTTP-Methode und URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "MYSQL_8_0_18", "settings": { "authorizedGaeApplications": [], "tier": "db-f1-micro", "kind": "sql#settings", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "us-west1-a", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "backupConfiguration": { "startTime": "18:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "1", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" }, "etag": "--redacted--", "ipAddresses": [ { "type": "PRIMARY", "ipAddress": "10.0.0.1" } ], "serverCaCert": { ... }, "instanceType": "CLOUD_SQL_INSTANCE", "project": "project-id", "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com", "backendType": "SECOND_GEN", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id", "connectionName": "project-id:region:instance-id", "name": "instance-id", "region": "us-west1", "gceZone": "us-west1-a" }
Suchen Sie in der Antwort nach dem Feld ipAddress
.
REST v1beta4
Die Instanz erstellen
In diesem Beispiel wird eine Instanz erstellt. Einige optionale Parameter wie Sicherungen und binäres Logging sind ebenfalls enthalten. Eine vollständige Liste der Parameter für diesen Aufruf finden Sie auf der Seite Instanzen: insert. Informationen zu den Instanzeinstellungen, einschließlich der gültigen Werte für die Region, finden Sie unter Instanzeinstellungen.
Die Instanz-ID sollte keine vertraulichen oder personenbezogenen Informationen enthalten, da sie extern sichtbar ist.
Die Projekt-ID muss im Instanznamen nicht angegeben werden. Dies erfolgt automatisch, wo es erforderlich ist, beispielsweise in den Logdateien.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- INSTANCE_ID: Ihre Instanz-ID.
- DATABASE_VERSION: Die Datenbankversion.
Beispiel:
MYSQL_8_4
oderMYSQL_8_0_37
Wenn Sie keine Datenbankversion angeben, wird die StandardversionMYSQL_8_0
verwendet. - REGION: Die Region.
- MACHINE_TYPE: Ihr Maschinentyp.
- EDITION_TYPE: Ihre Cloud SQL-Version
- DATA_CACHE_ENABLED: (Optional) Auf
true
gesetzt, um den Datencache für Ihre Instanz zu aktivieren - PRIVATE_NETWORK: Geben Sie den Namen des VPC-Netzwerks (Virtual Private Cloud) an, das Sie für diese Instanz verwenden möchten. Der Zugriff auf private Dienste muss bereits für das Netzwerk konfiguriert sein.
- AUTHORIZED_NETWORKS: Geben Sie für öffentliche IP-Verbindungen die Verbindungen aus autorisierten Netzwerken an, die eine Verbindung zu Ihrer Instanz herstellen können.
- CA_MODE: Geben Sie eine Zertifizierungsstellenhierarchie für die Instanz an, entweder
GOOGLE_MANAGED_INTERNAL_CA
oderGOOGLE_MANAGED_CAS_CA
. Wenn SieserverCaMode
nicht angeben, wird die StandardkonfigurationGOOGLE_MANAGED_INTERNAL_CA
verwendet. Diese Funktion befindet sich in der Vorabversion.
Wenn Sie eine Passwortrichtlinie beim Erstellen der Instanz festlegen möchten, fügen Sie das passwordValidationPolicy-Objekt in die Anfrage ein. Legen Sie nach Bedarf die folgenden Parameter fest:
enablePasswordPolicy
: Aktiviert die Passwortrichtlinie, wenn dafürtrue
abgegeben ist.Um die Passwortrichtlinie zu entfernen, verwenden Sie eine
PATCH
-Anfrage mitnull
fürenablePasswordPolicy
. In diesem Fall werden die anderen Parameter der Passwortrichtlinie zurückgesetzt.minLength
: Gibt die Mindestanzahl an Zeichen an, die das Passwort haben muss.complexity
: Prüft, ob das Passwort eine Kombination aus Kleinbuchstaben, Großbuchstaben, numerischen und nicht alphanumerischen Zeichen ist. Der Standardwert istCOMPLEXITY_DEFAULT
.reuseInterval
: Gibt die Anzahl vorheriger Passwörter an, die nicht wiederverwendet werden können.Wird nur für Cloud SQL for MySQL 8.0 und neuer unterstützt.
disallowUsernameSubstring
: Verhindert die Verwendung des Nutzernamens im Passwort, wenn dafürtrue
festgelegt ist.
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
JSON-Text anfordern:
{ "name": "INSTANCE_ID", "region": "REGION", "databaseVersion": "DATABASE_VERSION", "settings": { "tier": "MACHINE_TYPE", "edition": "EDITION_TYPE", "dataCacheConfig" { "dataCacheEnabled": DATA_CACHE_ENABLED }, "backupConfiguration": { "binaryLogEnabled": true, "enabled": true }, "passwordValidationPolicy": { "enablePasswordPolicy": true "minLength": "MIN_LENGTH", "complexity": COMPLEXITY_DEFAULT, "reuseInterval": "REUSE_INTERVAL", "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING", } "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [AUTHORIZED_NETWORKS], "ipv4Enabled": false, "enablePrivatePathForGoogleCloudServices": true, "serverCaMode": "CA_MODE" } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2019-09-25T22:19:33.735Z", "operationType": "CREATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
Die Antwort ist ein Vorgang mit langer Ausführungszeit, der einige Minuten dauern kann.
Root-Passwort aktualisieren
Aktualisieren Sie nach der Initialisierung der Instanz das Root-Passwort:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID.
- instance-id: die Instanz-ID, die im vorherigen Schritt erstellt wurde
- root-password: das gewünschte Root-Passwort
HTTP-Methode und URL:
PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?host=%25&name=root
JSON-Text anfordern:
{ "name": "root", "host": "%", "password": "root-password" }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id", "status": "DONE", "user": "user@example.com", "insertTime": "2019-09-26T14:32:30.592Z", "startTime": "2019-09-26T14:32:30.594Z", "endTime": "2019-09-26T14:32:33.518Z", "operationType": "UPDATE_USER", "name": "operation-id", "targetId": "instance-id", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id", "targetProject": "project-id" }
Die Antwort ist ein Vorgang mit langer Ausführungszeit, der einige Minuten dauern kann.
IPv4-Adresse abrufen
Rufen Sie die automatisch zugewiesene IPv4-Adresse für die neue Instanz ab:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: Ihre Projekt-ID.
- instance-id: die Instanz-ID, die im vorherigen Schritt erstellt wurde
HTTP-Methode und URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "MYSQL_8_0_18", "settings": { "authorizedGaeApplications": [], "tier": "db-f1-micro", "kind": "sql#settings", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "us-west1-a", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "backupConfiguration": { "startTime": "18:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "1", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" }, "etag": "--redacted--", "ipAddresses": [ { "type": "PRIMARY", "ipAddress": "10.0.0.1" } ], "serverCaCert": { ... }, "instanceType": "CLOUD_SQL_INSTANCE", "project": "project-id", "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com", "backendType": "SECOND_GEN", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id", "connectionName": "project-id:region:instance-id", "name": "instance-id", "region": "us-west1", "gceZone": "us-west1-a" }
Suchen Sie in der Antwort nach dem Feld ipAddress
.
Schreibendpunkt generieren
Wenn Sie eine Cloud SQL Enterprise Plus-Instanz erstellen möchten und Cloud SQL automatisch einen Schreibendpunkt für die Instanz generieren soll, aktivieren Sie die Cloud DNS API für Ihr Google Cloud-Projekt.
Wenn Sie bereits eine Instanz der Cloud SQL Enterprise Plus-Version haben und möchten, dass Cloud SQL automatisch einen Schreibendpunkt generiert, erstellen Sie ein Replikat, das für die erweiterte Notfallwiederherstellung aktiviert ist.
Ein Schreibendpunkt ist ein globaler DNS-Name (Domain Name Service), der automatisch in die IP-Adresse der aktuellen primären Instanz aufgelöst wird. Dieser Endpunkt leitet eingehende Verbindungen bei einem Failover oder Switchover des Replicas automatisch an die neue primäre Instanz weiter. Sie können den Schreibendpunkt in einem SQL-Verbindungsstring anstelle einer IP-Adresse verwenden. Wenn Sie einen Schreibendpunkt verwenden, müssen Sie bei einem regionalen Ausfall keine Änderungen an der Anwendungsverbindung vornehmen.
Weitere Informationen zum Abrufen des Schreibendpunkts für die Instanz finden Sie unter Instanzinformationen ansehen. Weitere Informationen zum Herstellen einer Verbindung zur Instanz über den Schreibendpunkt finden Sie unter Über einen Schreibendpunkt eine Verbindung herstellen.
Nebenversion der Datenbank für MySQL 8.0 angeben
Sie können die Nebenversion einer vorhandenen MySQL 8.0-Instanz mit gcloud
oder der REST API angeben.
gcloud
Führen Sie den Befehl gcloud sql instances create
mit dem Flag --database-version
aus.
Ersetzen Sie vor dem Ausführen des Befehls die folgenden Variablen:
- INSTANCE_NAME: Name der Instanz
- DATABASE_VERSION: Datenbanknebenversion der Instanz:
MYSQL_8_0_18
,MYSQL_8_0_26
,MYSQL_8_0_27
,MYSQL_8_0_28
,MYSQL_8_0_29
,MYSQL_8_0_30
,MYSQL_8_0_31
(Standardnebenversion für MySQL 8.0),MYSQL_8_0_32
,MYSQL_8_0_33
,MYSQL_8_0_34
,MYSQL_8_0_35
,MYSQL_8_0_36
,MYSQL_8_0_37
,MYSQL_8_0_39
oderMYSQL_8_0_40
. Wenn SieMYSQL_8_0
angeben, wird die Standardnebenversion verwendet.Wenn Sie dieses Flag nicht angeben, wird die Standardhauptversion
MYSQL_8_0
verwendet.
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION
Ausführliche Informationen finden Sie in der Dokumentation zum Erstellen einer Instanz mithilfe von gcloud
.
REST Version 1
Verwenden Sie eine POST-Anfrage mit der Methode instances:insert und dem Flag databaseVersion
.
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances
- project_id: ID des Projekts
- instance_id: Name der Instanz
- databaseVersion: Datenbankversion der Instanz:
MYSQL_8_0_18
,MYSQL_8_0_26
,MYSQL_8_0_27
,MYSQL_8_0_28
,MYSQL_8_0_29
,MYSQL_8_0_30
,MYSQL_8_0_31
(Standardnebenversion für MySQL 8.0),MYSQL_8_0_32
,MYSQL_8_0_33
,MYSQL_8_0_34
,MYSQL_8_0_35
,MYSQL_8_0_36
,MYSQL_8_0_37
,MYSQL_8_0_39
oderMYSQL_8_0_40
. Wenn SieMYSQL_8_0
als Version angeben, wird die Standardnebenversion verwendet. Wenn Sie das FlagdatabaseVersion
nicht angeben, wird die StandardhauptversionMYSQL_8_0
verwendet.
Weitere Informationen finden Sie in der Dokumentation zum Erstellen einer Instanz mithilfe der REST v1 API.
REST v1beta4
Verwenden Sie eine POST-Anfrage mit der Methode instances:insert und dem Flag databaseVersion
.
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances
Ersetzen Sie diese Variablen, bevor Sie die Anfragedaten verwenden:
- project_id: ID des Projekts
- instance_id: Name der Instanz
- databaseVersion:
Datenbanknebenversion der Instanz:
MYSQL_8_0_18
,MYSQL_8_0_26
,MYSQL_8_0_27
,MYSQL_8_0_28
,MYSQL_8_0_29
,MYSQL_8_0_30
,MYSQL_8_0_31
(Standardnebenversion für MySQL 8.0),MYSQL_8_0_32
,MYSQL_8_0_33
.MYSQL_8_0_34
,MYSQL_8_0_35
,MYSQL_8_0_36
,MYSQL_8_0_37
,MYSQL_8_0_39
oderMYSQL_8_0_40
. Wenn SieMYSQL_8_0
angeben, wird die Standardnebenversion verwendet. Wenn Sie das FlagdatabaseVersion
nicht angeben, wird die StandardhauptversionMYSQL_8_0
verwendet.
Weitere Informationen finden Sie in der Dokumentation zum Erstellen einer Instanz mithilfe der REST v1beta4 API.
Datenbank-Nebenversion für Lesereplikate, Klone und PITR
Beim Erstellen eines Lesereplikats können Sie die Datenbank-Nebenversion des Lesereplikats angeben. Standardmäßig werden neue Lesereplikate mit der Standardnebenversion erstellt.
Beim Klonen einer Instanz hat die neu erstellte Instanz dieselbe Nebenversion wie die Quelle.
Wenn Sie eine Wiederherstellung zu einem bestimmten Zeitpunkt durchführen, hat die neu erstellte Instanz dieselbe Datenbank-Nebenversion wie die Quelle.
Benutzerdefinierte Instanzkonfigurationen
Bestimmt Speicher und virtuelle Kerne, die für Ihre Cloud SQL-Instanz verfügbar sind. Die Verfügbarkeit des Maschinentyps wird durch die Cloud SQL-Version bestimmt.
Achten Sie bei Arbeitslasten, die eine Verarbeitung in Echtzeit erfordern, z. B. die Online-Transaktionsverarbeitung (Online Transaction Processing, OLTP), darauf, dass Ihre Instanz über genügend Arbeitsspeicher verfügt, um den gesamten Arbeitssatz verarbeiten zu können. Außerdem gibt es weitere Faktoren, die sich auf den Arbeitsspeicherbedarf auswirken, wie etwa die Anzahl der aktiven Verbindungen und die internen Overhead-Prozesse. Sie sollten Lasttests durchführen, um Leistungsprobleme in Ihrer Produktionsumgebung zu vermeiden.
Wählen Sie bei der Konfiguration der Instanz genügend Arbeitsspeicher und vCPUs für die Verarbeitung Ihrer Arbeitslast aus. Führen Sie dann ein Upgrade durch, wenn Ihre Arbeitslast zunimmt. Eine Maschinenkonfiguration mit zu wenig vCPUs kann die SLA-Abdeckung verlieren. Weitere Informationen finden Sie unter Betriebsrichtlinien.
Maschinentypen für Cloud SQL Enterprise Plus-Instanzen
Für Instanzen der Cloud SQL Enterprise Plus-Version sind Maschinentypen so vordefiniert:
Enterprise Plus-Maschinentyp | vCPUs | Arbeitsspeicher (GB) | Lokale SSD |
---|---|---|---|
db-perf-optimized-N-2 | 2 | 16 | 375 |
db-perf-optimized-N-4 | 4 | 32 | 375 |
db-perf-optimized-N-8 | 8 | 64 | 375 |
db-perf-optimized-N-16 | 16 | 128 | 750 |
db-perf-optimized-N-32 | 32 | 256 | 1500 |
db-perf-optimized-N-48 | 48 | 384 | 3.000 |
db-perf-optimized-N-64 | 64 | 512 | 6000 |
db-perf-optimized-N-80 | 80 | 640 | 6000 |
db-perf-optimized-N-96 | 96 | 768 | 6000 |
db-perf-optimized-N-128 | 128 | 864 | 9000 |
Maschinentypen für Cloud SQL Enterprise Edition-Instanzen
Für Instanzen der Cloud SQL Enterprise-Version können Sie mit dem Befehl gcloud sql
instances create
auch benutzerdefinierte Instanzkonfigurationen erstellen.
Mit benutzerdefinierten Instanzkonfigurationen können Sie die Größe des Arbeitsspeichers und die Anzahl der CPUs festlegen, die Ihre Instanz benötigt. Mit dieser Flexibilität können Sie die geeignete VM-Form für Ihre Arbeitslast auswählen.
Namen von Maschinentypen haben folgendes Format: db-custom-#-#
Ersetzen Sie den ersten #-Platzhalter durch die Anzahl der CPUs in der Maschine und den zweiten #-Platzhalter durch die Arbeitsspeichermenge auf der Maschine.
Wenn Ihr Maschinenname beispielsweise db-custom
lautet und Ihre Maschine 1 CPU und 3.840 MB RAM hat, ist das Format für die Maschine db-custom-1-3840
.
Bei der Auswahl der Anzahl der CPUs und der Speichergröße gibt es für die ausgewählte Konfiguration einige Einschränkungen:
- Der Wert für vCPUs muss entweder 1 oder eine gerade Zahl im Bereich von 2 bis 32 sein.
- Der Wert für Speicher muss folgender sein:
- Pro vCPU sind 0,9 bis 6,5 GB zulässig
- Muss ein Vielfaches von 256 MB sein
- Muss mindestens 3,75 GB (3.840 MB) sein
In folgender Tabelle sind die Namen der Legacy-Maschinentypen, die Anzahl der CPUs, der RAM pro Maschinentyp sowie der resultierende String für den Maschinentyp aufgeführt.
Sie können den entsprechenden Maschinentyp erstellen. Geben Sie dazu in der Google Cloud Console die entsprechende CPU und RAM an oder verwenden Sie die gcloud CLI oder db-custom-#-#
in der API.
Legacy-Maschinentyp | vCPUs | Arbeitsspeicher (MB) | db-custom-CPU-RAM-String (API-Stufenstring) |
---|---|---|---|
db-n1-standard-1 | 1 | 3.840 | db-custom-1-3840 |
db-n1-standard-2 | 2 | 7.680 | db-custom-2-7680 |
db-n1-standard-4 | 4 | 15.360 | db-custom-4-15360 |
db-n1-standard-8 | 8 | 30.720 | db-custom-8-30720 |
db-n1-standard-16 | 16 | 61.440 | db-custom-16-61440 |
db-n1-standard-32 | 32 | 122.880 | db-custom-32-122880 |
db-n1-standard-64 | 64 | 245.760 | db-custom-64-245760 |
db-n1-standard-96 | 96 | 368640 | db-custom-96-368640 |
db-n1-highmem-2 | 2 | 13.312 | db-custom-2-13312 |
db-n1-highmem-4 | 4 | 26.624 | db-custom-4-26624 |
db-n1-highmem-8 | 8 | 53.248 | db-custom-8-53248 |
db-n1-highmem-16 | 16 | 106.496 | db-custom-16-106496 |
db-n1-highmem-32 | 32 | 212.992 | db-custom-32-212992 |
db-n1-highmem-64 | 64 | 425.984 | db-custom-64-425984 |
db-n1-highmem-96 | 96 | 638976 | db-custom-96-638976 |
Fehlerbehebung
Problem | Fehlerbehebung |
---|---|
Fehlermeldung: Failed to create subnetwork. Couldn't
find free blocks in allocated IP ranges. Please allocate new ranges for
this service provider . |
Im zugewiesenen IP-Bereich sind keine weiteren Adressen verfügbar. Es gibt dazu mehrere mögliche Ursachen:
Zur Behebung dieses Problems können Sie entweder den vorhandenen zugewiesenen IP-Bereich erweitern oder der privaten Dienstverbindung einen zusätzlichen IP-Bereich zuweisen. Weitere Informationen finden Sie unter IP-Adressbereich zuweisen. Wenn Sie beim Erstellen der Cloud SQL-Instanz das Flag Achten Sie beim Zuweisen eines neuen Bereichs darauf, dass sich die Zuweisung nicht mit vorhandenen Zuweisungen überschneidet. Nachdem Sie einen neuen IP-Bereich erstellt haben, aktualisieren Sie das VPC-Peering mit folgendem Befehl: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID \ --force Wenn Sie eine bestehende Zuweisung erweitern, müssen Sie darauf achten, dass der Zuweisungsbereich nur vergrößert und nicht verkleinert wird. Wenn die ursprüngliche Zuweisung beispielsweise 10.0.10.0/24 war, sollte die neue Zuweisung mindestens 10.0.10.0/23 lauten. Wenn Sie von einer /24-Zuweisung ausgehen, ist es im Allgemeinen eine gute Faustregel, /mask für jede Bedingung (zusätzliche Instanztypgruppe, zusätzliche Region) um 1 zu verringern. Wenn Sie beispielsweise versuchen, beide Instanztypgruppen mit derselben Zuweisung zu erstellen, reicht es aus, von /24 zu /23 zu wechseln. Aktualisieren Sie nach dem Erweitern eines vorhandenen IP-Bereichs das VPC-Peering mit folgendem Befehl: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID |
Fehlermeldung: Failed to create subnetwork. Router status is
temporarily unavailable. Please try again later. Help Token:
[token-ID] . |
Versuchen Sie noch einmal, die Cloud SQL-Instanz zu erstellen. |
Fehlermeldung: Failed to create subnetwork. Required
'compute.projects.get' permission for PROJECT_ID . |
Wenn Sie eine Instanz mithilfe einer privaten IP-Adresse erstellen, wird mit der Service Networking API zur richtigen Zeit ein Dienstkonto erstellt. Wenn Sie die Service Networking API erst vor Kurzem aktiviert haben, wird das Dienstkonto möglicherweise nicht erstellt und die Instanzerstellung schlägt fehl. In diesem Fall müssen Sie warten, bis das Dienstkonto im gesamten System verteilt wurde, oder es manuell mit den erforderlichen Berechtigungen hinzufügen. |
Nächste Schritte
- MySQL-Datenbank auf der Instanz erstellen
- MySQL-Nutzer auf der Instanz erstellen
- Zugriff auf die Instanz sichern und steuern.
- Verbindung zu der Instanz über einen MySQL-Client herstellen
- Daten in die Datenbank importieren