开发指南—DDL语句—分库分表语法—CREATE DATABASE

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: CREATE DATABASE语句用于创建数据库,并可以指定数据库的默认属性(如数据库默认字符集,校验规则等)。

语法


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 = partition_mode_option]
 
locality_option:
    'dn=storage_inst_id_list'
storage_inst_id_list:
    storage_inst_id[,storage_inst_id_list]
    
partition_mode_option:
     'partitioning'
    |'sharding'

参数说明

参数 说明
database_name 指定要修改属性的数据库名称。如果不指定,会对当前默认数据库进行修改。
CHARSET charset_name 指定要修改的字符集。
COLLATE collation_name 指定校对规则。
LOCALITY 创建数据库时指定该库的存储位置。
PARTITION_MODE

指定逻辑库所使用的分区模式,支持两种分区模式:

  • partitioning:使用MySQL类型的分区表建表语法(例如,partition byHash/Range/List)进行分区建表。
  • sharding:使用DRDS模式的分库分表建表语法(例如,dbpartition by / tbpartition by)。

如果不指定,默认是partitioning。

数据库的分区模式不可更改,建库时一旦指定,不能变更。

示例

  • 创建数据库test,并指定字符集为UTF8。
mysql> create database test PARTITION_MODE=sharding default CHARACTER SET UTF8;

Query OK, 1 row affected (0.00 sec)
  • 在实例中创建一个数据库,并通过以下命令指定其存储位置为polardbx-storage-0-master节点。
mysql> CREATE DATABASE db1 PARTITION_MODE=sharding LOCALITY='dn=polardbx-storage-0-master';
  • 说明
    • 如果在创建数据库时未指定数据库的存储位置,系统将默认在所有存储节点中均匀分布数据库。
    • 数据库中分表的存储位置与该库的存储位置保持一致,以实现分表上的数据隔离。

创建成功后,您可以通过以下语句查看数据库的存储位置信息。


mysql> SHOW CREATE DATABASE db1 PARTITION_MODE=sharding;

返回结果如下所示:


+----------+------------------------------------------------------------------------+
| DATABASE | CREATE DATABASE |
+----------+------------------------------------------------------------------------+
| db1 | CREATE DATABASE `db1` / LOCALITY = "dn=polardbx-storage-0-master" / |
+----------+------------------------------------------------------------------------+
1 row in set
相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
2月前
|
数据库连接 网络安全 数据库
Could not create connection to database server.Attempted reconnect 3 times. Giving up.
这篇文章提供了解决数据库连接问题的方法,建议在连接字符串后添加`?serverTimezone=UTC`来指定时区,并检查网络设置、连接属性、驱动版本以及是否需要SSH或SSL连接。
Could not create connection to database server.Attempted reconnect 3 times. Giving up.
|
3月前
|
SQL 数据库
SQL CREATE DATABASE 语句
【7月更文挑战第18天】SQL CREATE DATABASE 语句。
132 1
|
4月前
|
SQL 数据库
SQL CREATE DATABASE 语句
SQL CREATE DATABASE 语句
60 4
|
3月前
|
数据库
数据库bug-[08001] Could not create connection to database server. Attempted reconnect 3,主机名ip必须写对
数据库bug-[08001] Could not create connection to database server. Attempted reconnect 3,主机名ip必须写对
|
4月前
|
SQL 数据库
SQL CREATE DATABASE 语句
SQL CREATE DATABASE 语句
40 2
|
数据库
Could not create connection to database server. Attempted reconnect 3 times. Giving up.
Could not create connection to database server. Attempted reconnect 3 times. Giving up.
148 0
|
SQL 数据库
CREATE DATABASE 语句
CREATE DATABASE 语句
118 1
|
SQL 数据库
|
数据库
EF6:在多语句事务内不允许使用 CREATE DATABASE 语句
一、问题 使用ef codefirst开发,无法创建数据库的问题,如下提示 Server Error in '/' Application. 在多语句事务内不允许使用 CREATE DATABASE 语句。
1568 0
下一篇
无影云桌面