跳到主要内容
跳到主要内容

创建数据库

创建一个新的数据库。

CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster] [ENGINE = engine(...)] [COMMENT 'Comment']

子句

如果不存在

如果 db_name 数据库已经存在,则 ClickHouse 不会创建新的数据库,并且:

  • 如果指定了子句,则不会抛出异常。
  • 如果未指定子句,则会抛出异常。

在集群上

ClickHouse 在指定集群的所有服务器上创建 db_name 数据库。更多详细信息请参阅 分布式 DDL 文章。

引擎

默认情况下,ClickHouse 使用其自己的 Atomic 数据库引擎。还提供 LazyMySQLPostgresSQLMaterializedPostgreSQLReplicatedSQLite 等引擎。

注释

创建数据库时可以添加注释。

所有数据库引擎都支持注释。

语法

CREATE DATABASE db_name ENGINE = engine(...) COMMENT 'Comment'

示例

查询:

CREATE DATABASE db_comment ENGINE = Memory COMMENT 'The temporary database';
SELECT name, comment FROM system.databases WHERE name = 'db_comment';

结果:

┌─name───────┬─comment────────────────┐
│ db_comment │ The temporary database │
└────────────┴────────────────────────┘