Google Cloud SQL è un servizio di database completamente gestito che semplifica la configurazione, la gestione e l'amministrazione dei database MySQL relazionali nel cloud.
In questo lab creeremo una nuova istanza Cloud SQL vuota, ti connetteremo utilizzando l'interfaccia a riga di comando di MySQL e creeremo un nuovo database vuoto.
Obiettivi didattici
- Come accedere all'interfaccia utente web di Cloud SQL in Google Cloud Console.
- Come creare un'istanza Cloud SQL utilizzando Google Cloud Console.
- Come impostare una password root utilizzando Google Cloud Console.
- Come connetterti all'istanza Cloud SQL tramite Cloud Shell.
- Come eliminare l'istanza Cloud SQL utilizzando Google Cloud Console.
Che cosa ti serve
Come utilizzerai questo tutorial?
Come giudichi la tua esperienza con l'utilizzo dei servizi Google Cloud Platform e di Firebase?
Configurazione automatica dell'ambiente
Se non hai ancora un Account Google (Gmail o Google Apps), devi crearne uno. Accedi alla console di Google Cloud Platform (console.cloud.google.com) e crea un nuovo progetto.
Ricorda l'ID progetto, un nome univoco in tutti i progetti Google Cloud (il nome sopra riportato è già stato utilizzato e non funzionerà per te). Vi verrà fatto riferimento più avanti in questo codelab come PROJECT_ID
.
Il prossimo passaggio consiste nell'attivare la fatturazione in Cloud Console per utilizzare le risorse di Google Cloud.
L'esecuzione di questo codelab non dovrebbe costare più di qualche euro, ma potrebbe essere di più se decidi di utilizzare più risorse o se le lasci in esecuzione (vedi la sezione "pulizia" alla fine di questo documento).
I nuovi utenti di Google Cloud Platform sono idonei per una prova senza costi di 300$.
In Google Cloud Console, fai clic sull'icona del menu in alto a sinistra dello schermo:
Scorri verso il basso e seleziona SQL nella sottosezione Archiviazione:
A questo punto dovresti vedere l'interfaccia utente web di Cloud SQL e, se utilizzi un progetto che al momento non dispone di istanze Cloud SQL, verrà visualizzata una finestra di dialogo che ti invita a creare una nuova istanza Cloud SQL.
Se utilizzi un progetto che ha già una o più istanze Cloud SQL, vedrai un elenco di tali istanze:
Se il progetto non ha istanze Cloud SQL, premi il pulsante Crea istanza per crearne una:
Se utilizzi un progetto che ha già una o più istanze Cloud SQL, premi il pulsante Crea istanza nella schermata Istanze come mostrato qui:
In entrambi i casi, dovresti vedere la pagina Scegli un tipo di istanza. In questo codelab, creeremo un'istanza di Cloud SQL di seconda generazione. Fai clic su Scegli seconda generazione.
Viene visualizzata la pagina Crea un'istanza. Qui devi specificare un nome per l'istanza. Questo nome deve essere univoco all'interno del progetto, ma non tra progetti, quindi puoi utilizzare lo stesso nome istanza codelab-0 mostrato nell'esempio, supponendo che nel progetto non siano presenti altre istanze Cloud SQL. Inserisci &codet-codelab-0 nella casella ID istanza. Ai fini di questo codelab, il resto della configurazione può essere lasciato con i valori predefiniti.
Tieni presente che se elimini un'istanza Cloud SQL, non potrai riutilizzarla per un massimo di una settimana. Se stai pianificando di utilizzare questo progetto per più di esperimenti, assicurati di scegliere un nome diverso da qualsiasi altro nome di istanza per il lavoro reale o di non poter riutilizzare tale nome per un determinato periodo di tempo.
Scorri fino in fondo alla pagina e premi Crea.
Verrà visualizzata la pagina Istanze, dove vedrai la nuova istanza con una rotellina sulla sinistra, che indica che è ancora in fase di creazione:
Dopo due o tre minuti, l'istanza sarà disponibile e la spia rotante blu sostituirà il segno di spunta verde. Assicurati di aggiornare la pagina di tanto in tanto:
La tua istanza Cloud SQL è ora pronta per essere utilizzata.
Fai clic sul nome dell'istanza per visualizzare la pagina dei dettagli, quindi fai clic su Controllo accesso:
Nella scheda Controllo accesso, premi Utenti:
Nella scheda Utenti, fai clic su Cambia password root:
Inserisci una nuova password nella pagina Modifica password e premi OK.
Attiva Google Cloud Shell premendo il pulsante di prompt in Google Cloud Console:
Se è la prima volta che utilizzi Google Cloud Shell per questo progetto, verrà visualizzata la schermata Google Cloud Shell. Premi Avvia Cloud Shell
La nuova versione di Cloud Shell verrà visualizzata nella parte inferiore di Google Cloud Console, dopo che avrai premuto Avvia Cloud Shell nella schermata di Google Cloud Shell se è la prima volta che è stato utilizzato con questo progetto oppure subito dopo aver premuto il pulsante Attiva Google Cloud Shell se è già stato utilizzato.
Connettiti all'istanza Cloud SQL utilizzando il comando gcloud sql mostrato di seguito, ma sostituisci "codelab-0" con il nome della tua istanza, se diverso:
gcloud sql connect codelab-0 --user=root
Dovresti vedere:
$ gcloud sql connect codelab-0 --user=root Whitelisting your IP for incoming connection for 1 minute...done. Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11302 Server version: 5.6.29-google-log (Google) Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective Owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
Come mostrato qui, ti verrà chiesto di inserire la password impostata nel passaggio precedente. Ora hai un messaggio MySQL completamente funzionante, eseguito come "quot;root". Puoi utilizzarlo per inserire istruzioni SQL, come questa per creare un nuovo database chiamato "codelab":
mysql> CREATE DATABASE codelab; Query OK, 1 row affected (0.00 sec)
Se la query restituisce un valore OK, l'istanza funziona. Esci e carica alcuni dati di esempio per eseguire alcune query reali.
Digita "exit;' e premi Invio per uscire dal prompt mysql.
Caricheremo il set di dati di esempio dei dipendenti che trovi nella documentazione ufficiale di MySQL.
Innanzitutto, devi scaricare gli script e i dati:
$ wget https://codeload.github.com/datacharmer/test_db/zip/master -O sampledb.zip $ unzip sampledb.zip && cd test_db-master
In secondo luogo, dobbiamo creare il database e le tabelle e caricare i dati. Di nuovo, sostituisci codelab-0 con il nome dell'istanza, se diverso:
$ gcloud sql connect codelab-0 --user=root < employees.sql
Ora possiamo eseguire query sui dati, di seguito puoi trovare alcune query di esempio. Puoi anche creare personalmente alcune query. Per acquisire familiarità con lo schema db, esamina il file employees.sql
. Innanzitutto, accedi al prompt SQL e passa al database dei dipendenti. Di nuovo, sostituisci codelab-0
con il nome dell'istanza, se diverso:
$ gcloud sql connect codelab-0 --user=root mysql> USE employees; Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A Database changed mysql> SELECT avg(s.salary) avg_salary_by_hire_year, YEAR(e.hire_date) FROM employees e, salaries s WHERE e.emp_no = s.emp_no GROUP BY YEAR(e.hire_date); +-------------------------+-------------------+ | avg_salary_by_hire_year | YEAR(e.hire_date)| +-------------------------+-------------------+ | 66966.7550 | 1985 | | 66187.3453 | 1986 | ... 16 rows in set (2.70 sec) mysql> SELECT de.dept_no, sum(s.salary) sum_salaries_per_department FROM employees e, salaries s, dept_emp de WHERE e.emp_no = de.emp_no AND e.emp_no = s.emp_no GROUP BY de.dept_no; +---------+-----------------------------+ | dept_no | sum_salaries_per_department| +---------+-----------------------------+ | d001 | 13725425266 | | d002 | 11650834677 | ... +---------+-----------------------------+ 9 rows in set (4.22 sec) mysql> exit;
Una volta terminato di eseguire query sul set di dati dei dipendenti di esempio, utilizza il comando "exit' per uscire dal prompt mysql.
Questo passaggio è facoltativo. Se vuoi continuare a sperimentare l'istanza Cloud SQL, non è necessario eliminarla. Tuttavia, il progetto che stai utilizzando continuerà a essere addebitato per l'istanza. Se non hai più bisogno di questa istanza, ti consigliamo di eliminarla per evitare addebiti.
Tieni presente che se elimini un'istanza Cloud SQL, non potrai riutilizzarla per un massimo di una settimana.
Hai due opzioni per eliminare l'istanza Cloud SQL.
1) Utilizza gcloud
nel tuo ambiente Cloud Shell. Di nuovo, sostituisci codelab-0 con il nome dell'istanza, se diverso:
$ gcloud sql instances delete codelab-0 All of the instance data will be lost when the instance is deleted. Do you want to continue (Y/n)? Y Deleting Cloud SQL instance...done. Deleted $
o
2) Torna alla pagina delle istanze Cloud SQL facendo clic su SQL nell'angolo in alto a sinistra:
Apri il menu a discesa accanto all'istanza che vuoi eliminare e scegli "Elimina":
L'eliminazione di un'istanza è definitiva. I dati dell'istanza non possono essere recuperati. Per evitare di eliminare accidentalmente l'istanza sbagliata, devi confermare l'eliminazione inserendo il nome dell'istanza in una finestra di dialogo di conferma:
Inserisci il nome dell'istanza e premi Elimina.
Hai creato una nuova istanza Cloud SQL, configurato una password root, creato un database vuoto e, facoltativamente, eliminato l'istanza Cloud SQL.
Cosa abbiamo trattato
- Creazione di istanze Cloud SQL tramite Google Cloud Console.
- Impostazione di una password root SQL tramite Google Cloud Console.
- Connessione al database tramite il client mysql.
- Creazione di un nuovo database MySQL tramite il prompt mysql.
- Eliminazione dell'istanza Cloud SQL.
Scopri di più
- Consulta la documentazione di Google Cloud SQL