Créer une instance

Cette page explique comment créer une instance Cloud SQL pour SQL Server.

Pour en savoir plus sur l'ensemble des paramètres d'instance, consultez la page Paramètres des instances.

Une nouvelle instance possède une base de données sqlserver.

Après avoir créé une instance Cloud SQL, vous allez créer ou importer des bases de données afin de les ajouter à cette instance.

Choisir des valeurs pour les processeurs virtuels et la taille de la mémoire

Lorsque vous créez une instance Cloud SQL pour SQL Server, vous avez le choix entre plusieurs configurations de machines en fonction de vos besoins en termes de processeur virtuel (vCPU) et de mémoire. Les sections suivantes présentent la configuration des processeurs virtuels et de la mémoire pour chaque version de base de données et type de machine :

SQL Server 2017 Express, SQL Server 2019 Express et SQL Server 2022 Express

Type de machine vCPU/Mémoire
Configuration légère
  • 1 vCPU, 3,75 Go
  • 2 processeurs virtuels, 3,75 Go
  • 4 processeurs virtuels, 3,75 Go
Standard
  • 1 vCPU, 3,75 Go
  • 2 vCPUs, 7,50 Go
  • 4 vCPUs, 15 GB
Haute capacité de mémoire
  • 4 vCPUs, 26 Go
  • 8 vCPUs, 52 Go
Personnalisé 1 à 8 vCPUs, 3,75 Go à 52 Go

SQL Server 2017 Web, SQL Server 2019 Web et SQL Server 2022 Web

Type de machine vCPU/Mémoire
Configuration légère
  • 1 vCPU, 3,75 Go
  • 2 processeurs virtuels, 3,75 Go
  • 4 processeurs virtuels, 3,75 Go
Standard
  • 1 vCPU, 3,75 Go
  • 2 vCPUs, 7,50 Go
  • 4 vCPUs, 15 GB
Haute capacité de mémoire
  • 4 vCPUs, 26 Go
  • 8 vCPUs, 52 Go
  • 16 vCPUs, 104 Go
Personnalisé 1 à 32 vCPUs, 3,75 Go à 208 Go

SQL Server 2017 Standard, SQL Server 2019 Standard et SQL Server 2022 Standard

Type de machine vCPU/Mémoire
Configuration légère
  • 1 vCPU, 3,75 Go
  • 2 processeurs virtuels, 3,75 Go
  • 4 processeurs virtuels, 3,75 Go
Standard
  • 1 vCPU, 3,75 Go
  • 2 vCPUs, 7,50 Go
  • 4 vCPUs, 15 GB
Haute capacité de mémoire
  • 4 vCPUs, 26 Go
  • 8 vCPUs, 52 Go
  • 16 vCPUs, 104 Go
Personnalisé 1 à 48 vCPUs, 3,75 Go à 312 Go

SQL Server 2017 Enterprise, SQL Server 2019 Enterprise et SQL Server 2022 Enterprise

Type de machine vCPU/Mémoire
Configuration légère
  • 2 processeurs virtuels, 3,75 Go
  • 4 processeurs virtuels, 3,75 Go
Standard
  • 2 vCPUs, 7,50 Go
  • 4 vCPUs, 15 GB
Haute capacité de mémoire
  • 4 vCPUs, 26 Go
  • 8 vCPUs, 52 Go
  • 16 vCPUs, 104 Go
Personnalisé 2 à 96 vCPUs, 3,75 Go à 624 Go

Multithreading simultané

Le multithreading simultané (SMT) sur Cloud SQL pour SQL Server vous permet d'exécuter deux processeurs virtuels (vCPUs) en tant que threads distincts et indépendants sur un même cœur physique. SMT est activé par défaut. Cependant, vous pouvez le désactiver, ce qui peut réduire les coûts de licence.

La désactivation du SMT peut avoir un impact sur les performances de votre instance. Pour comprendre l'impact de la désactivation du SMT sur les performances de votre instance, nous vous recommandons d'effectuer un test de charge sur votre instance.

Créer une instance

Console

  1. Accédez à la page "Instances Cloud SQL" dans Google Cloud Console.

    Accéder à la page Instances Cloud SQL

  2. Cliquez sur Créer une instance.
  3. Cliquez sur Choisir SQL Server.
  4. Dans le champ ID d'instance du volet d'informations de l'instance, saisissez un ID pour votre instance.

    Vous n'avez pas besoin d'indiquer l'ID du projet. Cet ajout s'effectue automatiquement le cas échéant (par exemple, dans les fichiers journaux).

  5. Saisissez un mot de passe pour l'utilisateur.
  6. Sélectionnez la version de la base de données de votre instance. Pour afficher les versions disponibles, cliquez sur la flèche du menu déroulant.
  7. Dans la section Sélectionner la disponibilité régionale et zonale, sélectionnez la région et la zone de votre instance.

    Placez l'instance dans la même région que les ressources qui y accèdent. La région que vous sélectionnez ne peut plus être modifiée. Dans la plupart des cas, il n'est pas nécessaire de spécifier une zone.

  8. Dans la section Personnaliser votre instance, mettez à jour les paramètres de votre instance. Par exemple, vous pouvez empêcher la suppression accidentelle d'une instance.
  9. Cliquez sur Créer.
  10. Une fois le processus d'initialisation de l'instance terminé, cliquez sur le nom de l'instance pour l'ouvrir.

gcloud

Pour en savoir plus sur l'installation et le démarrage avec gcloud CLI, consultez la page Installer gcloud CLI. Pour obtenir plus d'informations sur le démarrage de Cloud Shell, consultez la documentation Cloud Shell.

Vous devez utiliser gcloud version 243.0.0 ou ultérieure.

Pour en savoir plus sur la protection d'une instance contre les suppressions accidentelles, consultez la section Empêcher la suppression d'une instance.

  1. Créez l'instance :
    gcloud beta sql instances create INSTANCE_NAME \
    --database-version=SQLSERVER_2017_STANDARD \
    --region=REGION_NAME \
    --cpu=NUMBER_OF_vCPUs \
    --memory=MEMORY_SIZE \
    --root-password=ROOT-PASSWORD
    

    Vous n'avez pas besoin d'indiquer l'ID du projet. Cet ajout s'effectue automatiquement le cas échéant (par exemple, dans les fichiers journaux).

    Comme indiqué précédemment sur cette page, les valeurs des processeurs virtuels et de la taille de la mémoire sont limitées. Consultez la section Choisir des valeurs pour les processeurs virtuels et la taille de la mémoire.

    Par exemple, la chaîne suivante crée une instance comportant deux processeurs virtuels et 7 680 Mo de mémoire :

    gcloud sql instances create myinstance \
    --database-version=SQLSERVER_2017_STANDARD \
    --region=us-central1 \
    --cpu=2 \
    --memory=7680MB \
    --root-password=EXAMPLE-PASSWORD
    

    Pour obtenir des exemples de valeurs, consultez la section Exemples de types de machines.

    Pour en savoir plus sur les réglages des paramètres d'instance, consultez la documentation sur la commande gcloud sql instances create.

  2. Notez l'adresse IP attribuée automatiquement.

    Si vous ne vous servez pas du proxy d'authentification Cloud SQL, les applications ou les outils l'utiliseront comme adresse hôte pour se connecter à l'instance.

  3. Définissez le mot de passe de l'utilisateur :
    gcloud sql users set-password sqlserver no-host --instance=[INSTANCE_NAME] \
           --password=[PASSWORD]
    

Terraform

Pour créer une instance, utilisez une ressource Terraform.

resource "google_sql_database_instance" "instance" {
  name             = "sqlserver-instance"
  region           = "us-central1"
  database_version = "SQLSERVER_2019_STANDARD"
  root_password    = "INSERT-PASSWORD-HERE"
  settings {
    tier = "db-custom-2-7680"
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

REST v1beta4

1. Créer l'instance

Tous les champs possibles ne sont pas affichés dans l'appel d'API de base ci-dessous. Pour obtenir un prototype de requête JSON, consultez la section Paramètres.

Consultez également la page Instances:insert. Pour en savoir plus sur les paramètres des instances, y compris sur les valeurs valides pour les régions, consultez la page Paramètres des instances. Pour en savoir plus sur les types de machines, consultez la section Configurations d'instances personnalisées.

N'incluez pas d'informations personnelles ou sensibles dans instance-id, car les utilisateurs externes peuvent voir cette valeur.

Vous n'avez pas besoin d'indiquer l'ID du projet dans le nom de l'instance. Cet ajout s'effectue automatiquement le cas échéant (par exemple, dans les fichiers journaux).

Le champ collation (non affiché dans l'appel d'API de base ci-dessous) vous permet de définir une valeur par défaut pour le type de classement utilisé pour les bases de données de votre instance. Cette valeur de classement par défaut est permanente au niveau de l'instance, mais pas au niveau de la base de données. Vous pouvez modifier cette valeur par défaut à l'aide d'un outil d'administration de bases de données, mais seulement pour une base de données spécifique que vous créez ou mettez à jour. Vous ne pouvez pas modifier la valeur de classement par défaut d'une instance après la création de celle-ci (sauf si vous recréez l'instance). Pour plus d'informations sur les classements dans SQL Server, consultez la page Prise en charge d’Unicode et des classements. Pour obtenir un prototype de requête JSON, consultez la section Paramètres. Voici un exemple de chaîne que vous pouvez spécifier pour le paramètre collation : SQL_Latin1_General_CP1_CI_AS.

Le champ timeZone (non affiché dans l'appel d'API de base ci-dessous) vous permet de définir un fuseau horaire par défaut permanent pour une instance. Pour obtenir la représentation JSON incluant ce champ, consultez la section Paramètres. Voici un exemple de chaîne que vous pouvez spécifier pour le paramètre timeZone : "Pacific Standard Time". En savoir plus.

Pour créer une instance avec service Microsoft AD géré, spécifiez un domaine tel que subdomain.mydomain.com dans le champ domain. Pour en savoir plus, consultez la page Créer une instance avec l'authentification Windows. Notez également les procédures et les contraintes liées à l'intégration d'un domaine AD géré dans un projet différent.

Pour en savoir plus sur la définition de la valeur de machine-type dans le corps de la requête, consultez la section Configurations d'instances personnalisées.

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • project-id : ID de votre projet
  • instance-id : ID de l'instance souhaitée
  • region : région souhaitée
  • database-version : chaîne d'énumération de la version de base de données. Par exemple : SQLSERVER_2017_STANDARD
  • password : mot de passe de l'utilisateur racine
  • machine-type : chaîne d'énumération du type (niveau) de machine, comme suit : db-custom-[CPUS]-[MEMORY_MBS]

Méthode HTTP et URL :

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

Corps JSON de la requête :

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

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.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://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

Une fois l'instance créée, vous pouvez affiner la configuration du compte utilisateur par défaut.

2. Récupérer l'adresse IPv4 de l'instance

Si vous le souhaitez, vous pouvez récupérer l'adresse IPv4 attribuée automatiquement. Dans la réponse, cette adresse se trouve dans le champ ipAddress.

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • project-id : ID de votre projet
  • instance-id : ID de votre instance, créé à l'étape précédente

Méthode HTTP et URL :

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

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "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://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "connectionName": "project-id:region:instance-id",
  "name": "instance-id",
  "region": "region",
  "gceZone": "zone"
}

Configurations d'instances personnalisées

Les configurations d'instances flexibles vous permettent d'allouer à votre instance la quantité de mémoire et le nombre de processeurs dont elle a besoin. Cette flexibilité vous permet également de choisir la forme de VM adaptée à votre charge de travail.

Les noms de types de machines utilisent le format suivant : db-custom-NUMBER_OF_vCPUs-MEMORY

Remplacez NUMBER_OF_vCPUs par le nombre de processeurs dans la machine et MEMORY par la quantité de mémoire dans la machine.

Par exemple, si le nom de votre machine est db-custom et que votre machine dispose d'un processeur et de 3 840 Mo de RAM, le format de la machine est db-custom-1-3840.

Lorsque vous sélectionnez le nombre de processeurs et la quantité de mémoire, certaines restrictions s'appliquent à la configuration que vous choisissez :

  • Le nombre de processeurs virtuels que vous pouvez configurer pour votre instance est basé sur votre version de SQL Server.
  • Le nombre de processeurs virtuels doit correspondre à 1 ou à un nombre pair compris entre 2 et 96.
  • La taille de la mémoire doit correspondre aux valeurs suivantes :
    • La mémoire doit être comprise entre 0,9 Go et 6,5 Go par processeur virtuel.
    • La taille de la mémoire doit être un multiple de 256 Mo.
    • La taille de la mémoire ne doit pas être inférieure à 3,75 Go (3 840 Mo).

Résoudre les problèmes

Problème Dépannage
Message d'erreur : Failed to create subnetwork. Router status is temporarily unavailable. Please try again later. Help Token: [token-ID]. Essayez de créer à nouveau l'instance Cloud SQL.

Étapes suivantes