CREATE CATALOG

MariaDB starting with 12.0

Catalog support is planned for 12.0.

Syntax

CREATE CATALOG [IF NOT EXISTS] catalog_name
    [create_specification] ...

create_specification:
    [DEFAULT] CHARACTER SET [=] charset_name
  | [DEFAULT] COLLATE [=] collation_name
  | COMMENT [=] 'comment'

Description

Creates a catalog and the mysql, sys and performance_schema schemas inside the catalog.

CREATE CATALOG can only be performed by a user in the def catalog with the CATALOG privilege.

Note that no users are created.

Example

CREATE catalog cat1;
USE catalog cat1;
CREATE USER root@localhost;
GRANT ALL privileges ON *.* TO root@localhost;
CREATE DATABASE test;

Limitations

The catalog name is limited to 64 characters. All characters must be in the basic ASCII set: (A-Z, a-z, -, _) This limitations is to be able to run catalogs with engines like InnoDB which has limited space in their internal data dictionary.

Pre-Creating Catalog Directories

CREATE CATALOG works even if the catalog directory already exists (as long as there is no mysql sub directory). This is to allow a database administrator to pre-create the catalog directory and mount it to disk volume and optionally add a configuration file inside the catalog directory. The directory will not be recognized as a catalog or show up in SHOW CATALOGS until the mysql sub directory is created by CREATE CATALOG or mariadb-install-db.

See Also

This page is licensed: CC BY-SA / Gnu FDL

Last updated

Was this helpful?