Crea y administra bases de datos

Esta página contiene información sobre cómo crear, hacer una lista y borrar bases de datos MySQL en una instancia de Cloud SQL.

Una instancia recién creada tiene cuatro bases de datos del sistema:

  • information_schema: Proporciona acceso a los metadatos de la base de datos y la información sobre el servidor de MySQL.
  • mysql: El esquema del sistema. Contiene tablas que almacenan información requerida por el servidor MySQL mientras se ejecuta.
  • performance_schema: Una función para supervisar la ejecución del servidor MySQL a un nivel bajo.
  • sys: Contiene un conjunto de objetos que ayuda a los DBA y los desarrolladores a interpretar los datos recopilados por el esquema de rendimiento.

Para obtener más información sobre las bases de datos MySQL, consulta la documentación de MySQL.

Antes de comenzar

Antes de completar las tareas de esta página, debes haber hecho lo siguiente:

  • Crear una instancia de Cloud SQL. Para obtener más información, consulta la sección sobre cómo crear instancias.

Si planeas usar el cliente mysql para crear o administrar tus bases de datos, debes haber hecho lo siguiente:

Crea una base de datos en la instancia de Cloud SQL

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. Selecciona Bases de datos en el menú de navegación de SQL.
  4. Haga clic en Create database.
  5. En el cuadro de diálogo Crear una base de datos, especifica el nombre de la base de datos y, de manera opcional, el grupo de caracteres y la intercalación.

    Para obtener más información sobre los grupos de caracteres y las intercalaciones, consulta la página sobre conjuntos de caracteres, intercalaciones, Unicode.

  6. Haz clic en Crear.

gcloud

Para obtener información de referencia, consulta gcloud sql databases create.

Para obtener más información sobre los grupos de caracteres y las intercalaciones, consulta la página sobre conjuntos de caracteres, intercalaciones, Unicode.

gcloud sql databases create DATABASE_NAME \
--instance=INSTANCE_NAME \
[--charset=CHARSET] \
[--collation=COLLATION]

Terraform

Para crear una base de datos, usa un recurso de Terraform.

resource "google_sql_database" "database" {
  name     = "my-database"
  instance = google_sql_database_instance.instance.name
}

Aplica los cambios

Para aplicar tu configuración de Terraform en un proyecto de Google Cloud, completa los pasos de las siguientes secciones.

Prepara Cloud Shell

  1. Inicia Cloud Shell
  2. Establece el proyecto de Google Cloud predeterminado en el que deseas aplicar tus configuraciones de Terraform.

    Solo necesitas ejecutar este comando una vez por proyecto y puedes ejecutarlo en cualquier directorio.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Las variables de entorno se anulan si configuras valores explícitos en el archivo de configuración de Terraform.

Prepara el directorio

Cada archivo de configuración de Terraform debe tener su propio directorio (también llamado módulo raíz).

  1. En Cloud Shell, crea un directorio y un archivo nuevo dentro de ese directorio. El nombre del archivo debe tener la extensión .tf, por ejemplo, main.tf. En este instructivo, el archivo se denomina main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Si sigues un instructivo, puedes copiar el código de muestra en cada sección o paso.

    Copia el código de muestra en el main.tf recién creado.

    De manera opcional, copia el código de GitHub. Esto se recomienda cuando el fragmento de Terraform es parte de una solución de extremo a extremo.

  3. Revisa y modifica los parámetros de muestra que se aplicarán a tu entorno.
  4. Guarda los cambios.
  5. Inicializa Terraform. Solo debes hacerlo una vez por directorio.
    terraform init

    De manera opcional, incluye la opción -upgrade para usar la última versión del proveedor de Google:

    terraform init -upgrade

Aplica los cambios

  1. Revisa la configuración y verifica que los recursos que creará o actualizará Terraform coincidan con tus expectativas:
    terraform plan

    Corrige la configuración según sea necesario.

  2. Para aplicar la configuración de Terraform, ejecuta el siguiente comando y, luego, escribe yes cuando se te solicite:
    terraform apply

    Espera hasta que Terraform muestre el mensaje “¡Aplicación completa!”.

  3. Abre tu proyecto de Google Cloud para ver los resultados. En la consola de Google Cloud, navega a tus recursos en la IU para asegurarte de que Terraform los haya creado o actualizado.

Borra los cambios

Para borrar tus cambios, haz lo siguiente:

  1. Para inhabilitar la protección contra la eliminación, en tu archivo de configuración de Terraform, establece el argumento deletion_protection en false.
    deletion_protection =  "false"
  2. Para aplicar la configuración actualizada de Terraform, ejecuta el siguiente comando y, luego, ingresa yes cuando se te solicite:
    terraform apply
  1. Quita los recursos que se aplicaron antes con tu configuración de Terraform a través de la ejecución del siguiente comando y, luego, ingresa yes cuando se te solicite:

    terraform destroy

REST v1

La siguiente solicitud usa el método databases:insert para crear una base de datos nueva en la instancia especificada.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia
  • database-name: El nombre de una base de datos dentro de la instancia de Cloud SQL

Método HTTP y URL:

POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases

Cuerpo JSON de la solicitud:

{
  "project": "project-id",
  "instance": "instance-id",
  "name": "database-name"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

REST v1beta4

La siguiente solicitud usa el método databases:insert para crear una base de datos nueva en la instancia especificada.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia
  • database-name: El nombre de una base de datos dentro de la instancia de Cloud SQL

Método HTTP y URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases

Cuerpo JSON de la solicitud:

{
  "project": "project-id",
  "instance": "instance-id",
  "name": "database-name"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Cliente mysql

Para obtener información de referencia, consulta CREATE DATABASE en la documentación de MySQL.

Para obtener más información sobre los grupos de caracteres y las intercalaciones, consulta la página sobre conjuntos de caracteres, intercalaciones, Unicode.

CREATE DATABASE database_name
  [[CHARACTER SET charset_name][COLLATE collation_name]];

Enumera tus bases de datos

Para hacer una lista de todas las bases de datos en una instancia, haz lo siguiente:

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. Haz clic en Bases de datos en el menú lateral izquierdo. La página Bases de datos muestra las bases de datos junto con su tipo de intercalación, grupo de caracteres y tipo de base de datos.

gcloud

Para obtener información de referencia, consulta gcloud sql databases list.

gcloud sql databases list \
--instance=INSTANCE_NAME

REST v1

La siguiente solicitud usa el método databases:list para hacer una lista de las bases de datos de una instancia.

Cuando haces una lista de las bases de datos con la API, verás bases de datos de plantillas adicionales y una base de datos del sistema que la consola no muestra. No puedes borrar o administrar la base de datos del sistema.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la instancia.

Método HTTP y URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

REST v1beta4

La siguiente solicitud usa el método databases:list para hacer una lista de las bases de datos de una instancia.

Cuando haces una lista de las bases de datos con la API, verás bases de datos de plantillas adicionales y una base de datos del sistema que la consola no muestra. No puedes borrar o administrar la base de datos del sistema.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: Es el ID de la instancia.

Método HTTP y URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Cliente mysql

Para obtener información de referencia, consulta SHOW DATABASES en la documentación de MySQL.

SHOW DATABASES;

Borrar una base de datos

Para borrar una base de datos en la instancia de Cloud SQL, haz lo siguiente:

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. Haz clic en Bases de datos en el menú lateral izquierdo.
  4. En la lista de bases de datos, busca la base de datos que deseas borrar y haz clic en el ícono de la papelera.
  5. En el diálogo Borrar base de datos, ingresa el nombre de la base de datos y, luego, haz clic en Borrar.

gcloud

Para obtener información de referencia, consulta gcloud sql databases delete.

gcloud sql databases delete DATABASE_NAME \
--instance=INSTANCE_NAME

REST v1

La siguiente solicitud usa el método databases:delete para borrar la base de datos especificada.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia
  • database-name: El nombre de una base de datos dentro de la instancia de Cloud SQL

Método HTTP y URL:

DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases/database-name

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

REST v1beta4

La siguiente solicitud usa el método databases:delete para borrar la base de datos especificada.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • project-id: el ID del proyecto
  • instance-id: El ID de la instancia
  • database-name: El nombre de una base de datos dentro de la instancia de Cloud SQL

Método HTTP y URL:

DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases/database-name

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Cliente mysql

Para obtener información de referencia, consulta DROP DATABASE en la documentación de MySQL.

DROP DATABASE [database_name];

¿Qué sigue?

Pruébalo tú mismo

Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud SQL en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.

Probar Cloud SQL gratis