2016-09-03 2 views
1

Ich kann meine erste Generation nicht über Export/Import auf die zweite migrieren.Umstellung von Google Cloud-Sql der 1. Generation auf die zweite Generation

Wenn ich versuche, eine SQL-Datei-Backup ich diesen Fehler zu importieren:

ERROR 1227 (42000) at line 28: Access denied; you need (at least one of) the SUPER privilege(s) for this operation 

Ich habe gelernt, dass ich die mysql Datenbank ausschließen müssen. Nachdem ich das getan habe, erscheint folgender Fehler:

ERROR 1419 (HY000) at line 148: You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) 

Es ist erwähnenswert, dass meine Datenbank Trigger hat. Ist das im Google Cloud Storage der 2. Generation nicht erlaubt? Wie kann ich meine Daten für diese neue Instanz wiederherstellen?

+0

Ich bin in der Lage, die Daten zu importieren, wenn ich die Trigger aus der .SQL-Datei entfernen. –

Antwort

0

(1) Wenn die Ziel CloudSQL DB der 2. Generation bereits über Datenbanken verfügt, möchten Sie sie löschen, bevor Sie die 1. Gen CloudSQL-Datenbanken importieren oder erneut importieren (nützlich, wenn Sie dies wiederholt testen). Die nächsten 2 Anweisungen erstellen eine Datei mit allen zu löschenden DBs und lassen sie dann fallen.

mysql -u tisadmin -p -h IP_ADDRESS_2nd_Gen_CloudSQL_DB -e "Zeige Datenbanken" | grep -v Datenbank | grep -v mysql | grep -v informationsschema | grep -v performance_schema | gawk '{print "drop database" $ 1 "wählen Sie Schlaf (0,1);"}'> dbsToBeDropped.sql

mysql -u tisadmin -p -h IP_ADDRESS_2nd_Gen_CloudSQL_DB < dbsToBeDropped.sql

(2) aktualisieren Sie die CloudSQL 2nd Generation-Engine Privilegien haben Sie in 1st Gen hatte

gcloud auth Login gcloud Konfig.satz Projekt [Projekt-id] gcloud sQL-Instanzen Patch [2ndGenCloudSQLInstance] --database-Flaggen log_bin_trust_function_creators ON =

(3) Export von 1. Gen CloudSQL Instanz mit Fahnen

Mysqldump -u tisadmin -p -h IP_ADDRESS_1st_Gen_CloudSQL_DB --hex-Blob --skip-Trigger --default-character-set = utf8 --databases "Channel_MASTER" "Sequenz" "dmm_old" "BusinessDataStandards"> dev-Backup-20170307a.sql

(4) Import in 2nd Gen CloudSQL

mysql -u tisadmin -p -h IP_ADDRESS_2nd_Gen_CloudSQL_DB < dev-Backup-20170307a.sql

Referenzen: https://cloud.google.com/sql/docs/mysql/import-export/creating-mysqldump-csv#mysqldump

DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled