Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can I run an sql file on my Google Cloud Sql instance using the gcloud sql command

I have an sql file that creates my mysql database and all my users and tables.

I am trying to figure out of there is a way I can automate using this sql file to initialize the database on my Google Cloud sql instance.

So far, the only way I have been able to determine, is that I use the gcloud sql connect command, and then just copy and paste the contents of the sql file into the mysql prompt.

There has got to be a better way though. Looking through the gcloud sql docs, I have not been able to find one. Am I missing something?

like image 409
Scorb Avatar asked Jun 30 '26 01:06

Scorb


2 Answers

gcloud sql is oriented towards managing the Cloud SQL instance.

Once you've created an instance, you may use any regular MySQL tool to interact with the instance including creating tables.

For example, see: https://cloud.google.com/sql/docs/mysql/connect-admin-proxy

I encourage you to use Google's Cloud SQL proxy to connect to the remote instance, see: https://cloud.google.com/sql/docs/mysql/quickstart-proxy-test

like image 105
DazWilkin Avatar answered Jul 01 '26 13:07

DazWilkin


Steps to run an sql file on my Google Cloud Sql instance using the gcloud sql console are as follows:

  1. Create a GCP storage bucket (ideally in the same project)
  2. Upload the file to this bucket
  3. Import the sql file from this bucket in the overview section of the GCP SQL console

There is a comprehensive set of instructions here: virginia uni GCP DB setup

like image 32
Daniel Redgate Avatar answered Jul 01 '26 13:07

Daniel Redgate