Tous les produits
Search
Centre de documentation

PolarDB:CREATE DATABASE

Dernière mise à jour :Aug 11, 2026

La commande CREATE DATABASE permet de créer une base de données logique dans PolarDB-X. Lors de cette création, spécifiez le jeu de caractères par défaut, l'interclassement, la localité de stockage ainsi que le mode de partitionnement.

Syntaxe

create_database_stmt:
    CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] database_name [database_option_list]

database_option_list:
    database_option [database_option ...]

database_option:
    [DEFAULT] {CHARACTER SET | CHARSET} [=] charset_name
  | [DEFAULT] COLLATE [=] collation_name
  | LOCALITY = locality_option}
  | [{PARTITION_MODE|MODE} = partition_mode_option]
  | [DEFAULT_SINGLE = default_single_option]

locality_option:
    'dn=storage_inst_id_list'

storage_inst_id_list:
    storage_inst_id[,storage_inst_id_list]

partition_mode_option:
     {'auto'|'partitioning'}
    |{'drds'|'sharding'}

default_single_option:
    {'on'|'off'}

Remarques d'utilisation

  • Les instances Standard Edition ne prennent pas en charge la syntaxe DBPARTITION BY servant à créer des shards de base de données et des shards de table.

  • Seules les instances Enterprise Edition permettent de créer des bases de données en mode DRDS.

Paramètres

Paramètre Description
database_name Nom de la base de données.
CHARSET charset_name Jeu de caractères associé à la base de données.
COLLATE collation_name Interclassement appliqué à la base de données.
LOCALITY Emplacement de stockage défini par un ou plusieurs ID de nœuds de données (DN). Cet emplacement est définitif après la création. En l'absence de paramètre LOCALITY, PolarDB-X répartit uniformément les données sur tous les nœuds de stockage.
MODE Mode de partitionnement de la base de données logique. Valeurs valides : auto et drds. Consultez la section Choisir un mode de partitionnement pour plus de détails. Valeur par défaut : drds.
DEFAULT_SINGLE Détermine si les données des tables uniques doivent être distribuées sur plusieurs DN lorsqu'aucune définition de partition explicite n'est fournie. Ce paramètre s'applique uniquement aux bases de données en mode AUTO et nécessite PolarDB-X 5.4.17-16921956 ou version ultérieure. Valeurs valides : on et off. Valeur par défaut : off.
Important

Le mode de partitionnement (MODE) ne peut plus être modifié une fois la base de données créée.

Choisir un mode de partitionnement

PolarDB-X propose deux modes de partitionnement pour les bases de données logiques. Sélectionnez celui qui correspond le mieux à votre méthode de création de tables.

Mode AUTO Mode DRDS
Par défaut Non Oui (valeur par défaut si MODE n'est pas spécifié)
Syntaxe de création de table PARTITION BY HASH, PARTITION BY RANGE, PARTITION BY LIST DBPARTITION BY, TBPARTITION BY
Tables uniques multi-nœuds Prise en charge possible (activation via DEFAULT_SINGLE='on') Non prise en charge
Partitionnement automatique par clé primaire Disponible (activation via set global auto_partition=true) Non disponible
Exigence d'édition Aucune restriction liée à l'édition Réservé à Enterprise Edition
Référence CREATE TABLE (mode AUTO) CREATE TABLE (mode DRDS)

Pour une explication détaillée de ces deux modes, reportez-vous à la rubrique Bases de données en mode AUTO et en mode DRDS.

Comportement de DEFAULT_SINGLE en mode AUTO

Le paramètre DEFAULT_SINGLE détermine le comportement adopté lors de la création d'une table sans définition de partition explicite dans une base de données en mode AUTO.

**DEFAULT_SINGLE** Comportement
off (par défaut) Une table unique est créée.
on Une table unique est créée et ses données sont distribuées sur l'ensemble des nœuds de données de l'instance. Voir Sharding de table courant.
Remarque

Si vous spécifiez simultanément DEFAULT_SINGLE='on' et MODE='auto', le paramètre DEFAULT_SINGLE='on' est prioritaire et désactive le partitionnement automatique par clé primaire.

Exemples

Création d'une base de données en mode AUTO avec UTF-8

CREATE DATABASE test MODE=auto default CHARACTER SET UTF8;
Query OK, 1 row affected (0.00 sec)

Création d'une base de données sur un nœud de stockage spécifique

Utilisez le paramètre LOCALITY pour ancrer la base de données sur un seul nœud de stockage. Les shards de table de cette base résident alors sur ce même nœud, ce qui isole géographiquement les données.

CREATE DATABASE db1 MODE=drds LOCALITY='dn=polardbx-storage-0-master';

Vérifiez l'emplacement après la création :

SHOW CREATE DATABASE db1 MODE=drds;
+----------+------------------------------------------------------------------------+
| DATABASE | CREATE DATABASE                                                        |
+----------+------------------------------------------------------------------------+
| db1      | CREATE DATABASE `db1` /* LOCALITY = "dn=polardbx-storage-0-master" */  |
+----------+------------------------------------------------------------------------+
1 row in set