Crea instancias

En esta página, se describe cómo crear una instancia de Cloud SQL para SQL Server.

Para obtener información detallada sobre toda la configuración de las instancias, consulta Configuración de las instancias.

Después de crear una instancia de Cloud SQL, debes agregarle bases de datos. Para ello, debes crearlas o importarlas.

Crea una instancia

Console

  1. Ve a la página Instancias de Cloud SQL en Google Cloud Console.

    Ir a la página Instancias de Cloud SQL

  2. Haz clic en Crear instancia.
  3. Selecciona SQL Server y haz clic en Siguiente.
  4. Ingresa un nombre.

    No incluyas información sensible o de identificación personal en el nombre de tu instancia, ya que es visible de forma externa.
    No debes incluir el ID del proyecto en el nombre de la instancia. Esto se hace de manera automática cuando es apropiado (por ejemplo, en los archivos de registro).

  5. Ingresa una contraseña para el usuario.
  6. En Ubicación, selecciona la región y zona para la instancia.

    Ubica la instancia en la misma región en la que están los recursos que acceden a ella. No se podrá modificar la región que seleccionaste en un futuro. En la mayoría de los casos, no necesitas especificar una zona.

  7. En las Opciones de configuración, actualiza otras configuraciones que necesites para tu instancia:

    Configuración Notas
    Versión de la base de datos
    Versión de la base de datos SQL Server 2017 Standard (predeterminado)
    SQL Server 2017 Enterprise
    SQL Server 2017 Express
    SQL Server 2017 Web
    Conectividad
    IP privada Agrega una dirección IP privada para la instancia. Para habilitar la conexión a la instancia, se requiere una configuración adicional.
    IP pública Agrega una dirección IP pública para la instancia. Para habilitar la conexión a la instancia, se requiere una configuración adicional.
    Tipo de máquina y almacenamiento
    Núcleos El número de CPU virtuales para una instancia. Más información.
    Memoria La cantidad de memoria para la instancia, en GB. Más información.
    Tipo de almacenamiento Indica que tu instancia usa almacenamiento SSD. Todas las instancias de SQL Server usan almacenamiento SSD. Más información
    Capacidad de almacenamiento La cantidad de almacenamiento aprovisionado para la instancia. Más información.
    Aumento de almacenamiento automático Determina si Cloud SQL proporciona de manera automática más almacenamiento para tu instancia cuando queda poco espacio libre. Más información.
    Copias de seguridad automáticas y alta disponibilidad
    Alta disponibilidad Si necesitas que tu instancia esté configurada para alta disponibilidad, debes seleccionar la opción Alta disponibilidad (regional). Más información.
    Copias de seguridad automáticas El período en el que deseas que se inicien las copias de seguridad.
    Redes autorizadas
    Marcas de la base de datos
    Marcas de la base de datos Puedes usar las marcas de la base de datos para controlar los parámetros y la configuración de la instancia. Más información.
    Programa de mantenimiento
    Período de mantenimiento Determina un período de una hora para que Cloud SQL realice un mantenimiento disruptivo en la instancia. Si no configuras el período, el mantenimiento disruptivo puede realizarse en cualquier momento. Más información.
    Horario de mantenimiento El momento que prefieres para las actualizaciones de la instancia, en relación con otras instancias del mismo proyecto. Más información.

  8. Haz clic en Crear.
  9. Una vez que la instancia termina de inicializarse, haz clic en su nombre para abrirla.

gcloud

Para obtener información sobre cómo instalar y comenzar a usar la herramienta de línea de comandos de gcloud, consulta Instala el SDK de Cloud. Si quieres obtener información para iniciar Cloud Shell, consulta la Documentación de Cloud Shell.

Hasta principios de marzo de 2020, usa la versión Beta del comando gcloud sql instances create. Es decir, usa el comando gcloud beta sql instances create.

Además, debes usar la versión 243.0.0 o una posterior de gcloud.

  1. Crea la instancia:
    gcloud sql instances create [INSTANCE_NAME] \
    --database-version=SQLSERVER_2017_STANDARD \
    --cpu=[NUMBER_CPUS] \
    --memory=[MEMORY_SIZE] \
    --root-password=[INSERT-PASSWORD-HERE]
    

    No incluyas información sensible o de identificación personal en el nombre de la instancia, ya que es visible de forma externa.
    No debes incluir el ID del proyecto en el nombre de la instancia. Esto se hace de manera automática cuando es apropiado (por ejemplo, en los archivos de registro).

    Hay restricciones para los valores de CPU virtual y tamaño de memoria:

    Opciones estándar (hay opciones de poco peso y alta memoria disponibles; consulta Google Cloud Console para obtener más información):

    Versión CPU / Memoria
    SQL Server 2017 Express Selecciona una de las opciones predeterminadas:
    • 1 CPU virtual, 3.75 GB
    • 2 CPU virtuales, 3.75 GB
    • 4 CPU virtuales, 3.75 GB
    SQL Server 2017 Web Selecciona entre las opciones predeterminadas o personalizadas:
    • 1 CPU virtual, 4 GB
    • 2 CPU virtuales, 8 GB
    • 4 CPU virtuales, 16 GB
    • De 1 a 16 CPU virtuales, de 4 a 64 GB
    SQL Server 2017 Standard Selecciona entre las opciones predeterminadas o personalizadas:
    • 1 CPU virtual, 4 GB
    • 2 CPU virtuales, 8 GB
    • 4 CPU virtuales, 16 GB
    • De 1 a 24 CPU virtuales, de 4 a 104 GB
    SQL Server 2017 Enterprise Selecciona entre las opciones predeterminadas o personalizadas:
    • 2 CPU virtuales, 8 GB
    • 4 CPU virtuales, 16 GB
    • De 2 a 96 CPU virtuales, de 8 a 104 GB

    Por ejemplo, la siguiente string crea una instancia con dos CPU virtuales y 7,680 MB de memoria:

    gcloud sql instances create myinstance \
    --database-version=SQLSERVER_2017_STANDARD \
    --cpu=2 \
    --memory=7680MB \
    --root-password=[INSERT-PASSWORD-HERE]
    

    Para obtener algunos valores de muestra, consulta Tipos de máquina de muestra.

    También puedes crear una instancia con núcleo compartido con --tier db-f1-micro o --tier db-g1-small y sin los parámetros --cpu y --memory.

    Puedes agregar más parámetros para determinar la configuración de otras instancias:

    Configuración Parámetro Notas
    Parámetros obligatorios
    Versión de la base de datos --database-version SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS o SQLSERVER_2017_WEB
    Región --region Consulta los valores válidos.
    Conectividad
    IP privada --network Especifica el nombre de la red de VPC que deseas usar para esta instancia. El acceso a servicios privados ya debe estar configurado para la red. Esta opción solo está disponible para el comando Beta (gcloud beta sql instances create). Más información.
    IP pública --authorized-networks Con conexiones de IP públicas, solo las conexiones de redes autorizadas se pueden conectar a tu instancia. Más información.
    Tipo de máquina y almacenamiento
    Tipo de máquina --tier Se usa para especificar una instancia con núcleo compartido (db-f1-micro o db-g1-small). No puedes especificar los parámetros --cpu o --memory si usas este parámetro.
    Tipo de almacenamiento --storage-type Indica que la instancia usa almacenamiento SSD (todas las instancias de SQL Server usan almacenamiento SSD). Más información.
    Capacidad de almacenamiento --storage-size La cantidad de almacenamiento aprovisionado para la instancia, en GB. Más información.
    Aumento de almacenamiento automático --storage-auto-increase Determina si Cloud SQL proporciona de manera automática más almacenamiento para tu instancia cuando queda poco espacio libre. Más información.
    Límite de aumento de almacenamiento automático --storage-auto-increase-limit Determina el tamaño del almacenamiento que Cloud SQL puede aumentar de forma automática. Esta opción solo está disponible para el comando Beta (gcloud beta sql instances create). Más información.
    Copias de seguridad automáticas y alta disponibilidad
    Alta disponibilidad --availability-type Para una instancia con alta disponibilidad, configúrala como REGIONAL. Más información.
    Copias de seguridad automáticas --backup-start-time El período en el que deseas que se inicien las copias de seguridad. Más información.
    Agregar marcas de bases de datos
    Marcas de la base de datos --database-flags Puedes usar las marcas de la base de datos para controlar los parámetros y la configuración de tu instancia. Obtén más información sobre las marcas de base de datos. Obtén más información sobre cómo darle formato a este parámetro.
    Configuración del programa de mantenimiento
    Período de mantenimiento --maintenance-window-day,
    --maintenance-window-hour
    Determina un período de una hora para que Cloud SQL realice un mantenimiento disruptivo en la instancia. Si no configuras el período, el mantenimiento disruptivo puede realizarse en cualquier momento. Más información.
    Horario de mantenimiento --maintenance-release-channel El momento que prefieres para las actualizaciones de la instancia, en relación con otras instancias del mismo proyecto. Use preview para las primeras actualizaciones y production para las más recientes. Más información.

  2. Anota la dirección IP que se asignó de manera automática.

    Si no usas el proxy de Cloud SQL, usarás esta dirección como dirección de host que tus aplicaciones o herramientas usarán para conectarse a la instancia.

  3. Configura la contraseña para el usuario:
    gcloud sql users set-password sqlserver no-host --instance=[INSTANCE_NAME] \
           --password=[PASSWORD]
    

REST

1. Crea la instancia.

Para ver una lista completa de los parámetros de esta llamada, consulta la página Instances:insert. Para obtener información sobre la configuración de las instancias, incluidos los valores válidos por región y tipo de máquina, consulta Configuración de las instancias.

No incluyas información sensible o de identificación personal en instance-id, ya que el valor es visible de forma externa.
No debes incluir el ID del proyecto en el nombre de la instancia. Esto se hace de manera automática cuando es apropiado (por ejemplo, en los archivos de registro).

El parámetro tier contiene una string que representa la cantidad de CPU y memoria de la instancia nueva. La string tiene el siguiente formato: db-custom-[CPUS]-[MEMORY_MBS]. Para ver algunos ejemplos, consulta Tipos de máquinas de muestra. Además, puedes crear una instancia con núcleo compartido si proporcionas db-f1-micro o db-g1-small como el valor del parámetro tier.

Antes de usar cualquiera de los siguientes datos de solicitud, reemplaza lo siguiente:

  • project-id: el ID de tu proyecto
  • instance-id: Es el ID de instancia que elegiste.
  • region: Es la región que elegiste.
  • database-version: Es la string de enumeración de la versión de la base de datos. Por ejemplo: SQLSERVER_2017_STANDARD.
  • password: Es la contraseña para el usuario raíz.
  • machine-type: Es la string de enumeración del tipo de máquina (nivel) como: db-custom-[CPUS]-[MEMORY_MBS].

Método HTTP y URL:

POST https://www.googleapis.com/sql/v1beta4/projects/project-id/instances

Cuerpo JSON de la solicitud:

{
  "name": "instance-id",
  "region": "region",
  "databaseVersion": "database-version",
  "rootPassword": "password",
  "settings": {
    "tier": "machine-type",
    "backupConfiguration": {
      "enabled": true
    }
  }
}

Para enviar tu solicitud, expande una de estas opciones:

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

{
  "kind": "sql#operation",
  "targetLink": "https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-01T19:13:21.834Z",
  "operationType": "CREATE",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://www.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Después de crear la instancia, puedes configurar la cuenta de usuario predeterminada.

2. Recupera la dirección IPv4 de la instancia

De manera opcional, puedes recuperar la dirección IPv4 asignada automáticamente. En la respuesta, esa dirección está en el campo ipAddress.

Antes de usar cualquiera de los siguientes datos de solicitud, reemplaza lo siguiente:

  • project-id: Es el ID del proyecto.
  • instance-id: Es el ID de la instancia, que creaste en el paso anterior.

Método HTTP y URL:

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

Para enviar tu solicitud, expande una de estas opciones:

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

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "database-version",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "machine-type",
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "ipv4Enabled": true
    },
    "locationPreference": {
      "zone": "zone",
      "kind": "sql#locationPreference"
    },
    "dataDiskType": "PD_SSD",
    "backupConfiguration": {
      "startTime": "19:00",
      "kind": "sql#backupConfiguration",
      "enabled": true
    },
    "settingsVersion": "1",
    "dataDiskSizeGb": "10"
  },
  "etag": "--redacted--",
  "ipAddresses": [
    {
      "type": "PRIMARY",
      "ipAddress": "10.0.0.1"
    }
  ],
  "serverCaCert": {
    ...
  },
  "instanceType": "CLOUD_SQL_INSTANCE",
  "project": "project-id",
  "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
  "backendType": "backend-type",
  "selfLink": "https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "connectionName": "project-id:region:instance-id",
  "name": "instance-id",
  "region": "region",
  "gceZone": "zone"
}

Tipos de máquina de muestra

Con tipos personalizados de máquinas, puedes configurar la cantidad de memoria y CPU que tu instancia necesita. Sin embargo, estos valores tienen algunas restricciones:

  • La cantidad de CPU virtuales debe ser 1 o un número par entre 2 y 96.
  • La memoria debe tener las siguientes características:
    • Ser de entre 0.9 y 6.5 GB por CPU virtual
    • Ser un múltiplo de 256 MB
    • Ser de al menos 3.75 GB (3,840 MB)

Estos son algunos valores de tipo de máquina de muestra, basados en los tipos predefinidos de máquina disponibles para las instancias de SQL Server:

Tipo predefinido de máquina CPU virtuales Memoria (MB) API de string de nivel
db-n1-standard-1 1 3840 db-custom-1-3840
db-n1-standard-2 2 7680 db-custom-2-7680
db-n1-standard-4 4 15360 db-custom-4-15360
db-n1-standard-8 8 30720 db-custom-8-30720
db-n1-standard-16 16 61440 db-custom-16-61440
db-n1-standard-32 32 122880 db-custom-32-122880
db-n1-standard-64 64 245760 db-custom-64-245760
db-n1-standard-96 96 368640 db-custom-96-368640
db-n1-highmem-2 2 13312 db-custom-2-13312
db-n1-highmem-4 4 26624 db-custom-4-26624
db-n1-highmem-8 8 53248 db-custom-8-53248
db-n1-highmem-16 16 106496 db-custom-16-106496
db-n1-highmem-32 32 212992 db-custom-32-212992
db-n1-highmem-64 64 425984 db-custom-64-425984
db-n1-highmem-96 96 638976 db-custom-96-638976

Próximos pasos