[ aws . glue ]

create-database

Description

Creates a new database in a Data Catalog.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-database
[--catalog-id <value>]
--database-input <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--catalog-id (string)

The ID of the Data Catalog in which to create the database. If none is provided, the AWS account ID is used by default.

--database-input (structure)

The metadata for the database.

Name -> (string)

The name of the database. For Hive compatibility, this is folded to lowercase when it is stored.

Description -> (string)

A description of the database.

LocationUri -> (string)

The location of the database (for example, an HDFS path).

Parameters -> (map)

These key-value pairs define parameters and properties of the database.

These key-value pairs define parameters and properties of the database.

key -> (string)

value -> (string)

CreateTableDefaultPermissions -> (list)

Creates a set of default permissions on the table for principals.

(structure)

Permissions granted to a principal.

Principal -> (structure)

The principal who is granted permissions.

DataLakePrincipalIdentifier -> (string)

An identifier for the AWS Lake Formation principal.

Permissions -> (list)

The permissions that are granted to the principal.

(string)

TargetDatabase -> (structure)

A DatabaseIdentifier structure that describes a target database for resource linking.

CatalogId -> (string)

The ID of the Data Catalog in which the database resides.

DatabaseName -> (string)

The name of the catalog database.

JSON Syntax:

{
  "Name": "string",
  "Description": "string",
  "LocationUri": "string",
  "Parameters": {"string": "string"
    ...},
  "CreateTableDefaultPermissions": [
    {
      "Principal": {
        "DataLakePrincipalIdentifier": "string"
      },
      "Permissions": ["ALL"|"SELECT"|"ALTER"|"DROP"|"DELETE"|"INSERT"|"CREATE_DATABASE"|"CREATE_TABLE"|"DATA_LOCATION_ACCESS", ...]
    }
    ...
  ],
  "TargetDatabase": {
    "CatalogId": "string",
    "DatabaseName": "string"
  }
}

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.

Examples

To create a database

The following create-database example creates a database in the AWS Glue Data Catalog.

aws glue create-database \
    --database-input "{\"Name\":\"tempdb\"}" \
    --profile my_profile \
    --endpoint https://glue.us-east-1.amazonaws.com

This command produces no output.

For more information, see Defining a Database in Your Data Catalog in the AWS Glue Developer Guide.

Output

None