Google Cloud SQL è un servizio di database completamente gestito che semplifica la configurazione, la gestione e l'amministrazione dei database relazionali MySQL nel cloud.
In questo lab creeremo una nuova istanza Cloud SQL vuota, ci connetteremo utilizzando l'interfaccia a riga di comando MySQL e creeremo un nuovo database vuoto.
Obiettivi didattici
- Come accedere all'UI web di Cloud SQL nella console Google Cloud.
- Come creare un'istanza Cloud SQL utilizzando la console Google Cloud.
- Come impostare una password di root utilizzando Google Cloud Console.
- Come connettersi all'istanza Cloud SQL tramite Cloud Shell.
- Come eliminare l'istanza Cloud SQL utilizzando la console Google Cloud.
Che cosa ti serve
Come utilizzerai questo tutorial?
Come valuti la tua esperienza con l'utilizzo dei servizi Google Cloud Platform e Firebase?
Configurazione dell'ambiente autonoma
Se non hai ancora un Account Google (Gmail o Google Apps), devi crearne uno. Accedi alla console di Google Cloud (console.cloud.google.com) e crea un nuovo progetto:
Ricorda l'ID progetto, un nome univoco per tutti i progetti Google Cloud (il nome riportato sopra è già stato utilizzato e non funzionerà per te, mi dispiace). In questo codelab verrà chiamato PROJECT_ID
.
Successivamente, dovrai abilitare la fatturazione nella console Cloud per utilizzare le risorse Google Cloud.
L'esecuzione di questo codelab non dovrebbe costarti più di qualche dollaro, ma potrebbe essere più cara 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 possono beneficiare di una prova senza costi di 300$.
Nella console Google Cloud, fai clic sull'icona Menu in alto a sinistra dello schermo:
Scorri verso il basso e seleziona SQL nella sottosezione Archiviazione:
Ora dovresti visualizzare la UI web di Cloud SQL e, supponendo che tu stia utilizzando un progetto che al momento non ha istanze Cloud SQL, vedrai 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 queste istanze:
Supponendo che il tuo progetto non abbia 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, ora dovresti visualizzare la pagina Scegli un tipo di istanza. In questo codelab creeremo un'istanza 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 i progetti, quindi puoi utilizzare lo stesso nome dell'istanza codelab-0 mostrato in questo esempio, supponendo che non ci siano altre istanze Cloud SQL nel tuo progetto. Inserisci "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 quando elimini un'istanza Cloud SQL, non puoi riutilizzare il nome dell'istanza per un massimo di una settimana. Se prevedi di utilizzare questo progetto per scopi diversi dalla sperimentazione, assicurati di scegliere un nome dell'istanza diverso da qualsiasi nome dell'istanza che potresti voler utilizzare per il lavoro reale, altrimenti potresti non essere in grado di riutilizzare quel nome dell'istanza per un periodo di tempo.
Scorri fino in fondo alla pagina e premi Crea.
Verrà visualizzata la pagina Istanze, in cui vedrai la nuova istanza con un indicatore di caricamento a sinistra, che indica che è ancora in fase di creazione:
Dopo due o tre minuti, l'istanza sarà disponibile e un segno di spunta verde sostituirà la rotellina blu. Assicurati di aggiornare la pagina di tanto in tanto:
La tua istanza Cloud SQL è ora pronta per l'uso.
Fai clic sul nome dell'istanza per visualizzare la pagina dei dettagli dell'istanza, quindi fai clic su Controllo dell'accesso:
Nella scheda Controllo accesso, premi Utenti:
Nella scheda Utenti, fai clic su Cambia password root:
Inserisci una nuova password nella pagina Cambia password e premi Ok.
Attiva Google Cloud Shell premendo il pulsante del prompt nella console Google Cloud:
Se è la prima volta che utilizzi Google Cloud Shell per questo progetto, vedrai la schermata di Google Cloud Shell. Premi Avvia Cloud Shell.
La nuova Cloud Shell verrà visualizzata nella parte inferiore della console Google Cloud, dopo aver premuto Avvia Cloud Shell nella schermata di Google Cloud Shell se è la prima volta che viene utilizzata con questo progetto oppure immediatamente dopo aver premuto il pulsante Attiva Google Cloud Shell se è già stata utilizzata.
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 che hai impostato nel passaggio precedente. Ora hai un prompt MySQL completamente funzionante, con accesso come "root". Puoi utilizzarlo per inserire istruzioni SQL, ad esempio questa per creare un nuovo database denominato "codelab":
mysql> CREATE DATABASE codelab; Query OK, 1 row affected (0.00 sec)
Se la query restituisce OK, la tua istanza funziona. Usciamo e carichiamo 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.
Per prima cosa, scarica 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. Anche in questo caso, sostituisci codelab-0 con il nome della tua istanza, se diverso:
$ gcloud sql connect codelab-0 --user=root < employees.sql
Ora possiamo eseguire query sui dati. Di seguito sono riportati alcuni esempi di query. Puoi anche creare alcune query autonomamente. Per acquisire familiarità con lo schema del database, esamina il file employees.sql
. Per prima cosa, accedi al prompt SQL e passa al database dei dipendenti. Anche in questo caso, sostituisci codelab-0
con il nome della tua 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;
Dopo aver eseguito la query sul set di dati di esempio dei dipendenti, utilizza il comando "exit" per uscire dal prompt mysql.
Questo passaggio è facoltativo. Se vuoi continuare a sperimentare con l'istanza Cloud SQL, non devi eliminarla in questo momento. Tuttavia, al progetto che utilizzi continueranno a essere addebitati i costi per l'istanza. Se non hai più bisogno di questa istanza, devi eliminarla ora per evitare questi addebiti.
Tieni presente che quando elimini un'istanza Cloud SQL, non puoi riutilizzare il nome dell'istanza per un massimo di una settimana.
Hai due opzioni per eliminare l'istanza Cloud SQL.
1) Utilizza gcloud
nel tuo ambiente Cloud Shell. Anche in questo caso, sostituisci codelab-0 con il nome della tua 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 di questa 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.
Argomenti trattati
- Creazione di istanze Cloud SQL tramite la console Google Cloud.
- Impostazione di una password root SQL tramite la console Google Cloud.
- Connessione al database utilizzando 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.