101 lines
4.0 KiB
Markdown
Raw Normal View History

2023-08-11 07:25:08 +02:00
---
title: MariaDB
slug: /connectors/database/mariadb
---
# MariaDB
{% multiTablesWrapper %}
| Feature | Status |
| :----------------- | :--------------------------- |
| Stage | PROD |
| Metadata | {% icon iconName="check" /%} |
| Query Usage | {% icon iconName="cross" /%} |
| Data Profiler | {% icon iconName="check" /%} |
| Data Quality | {% icon iconName="check" /%} |
| Lineage | Partially via Views |
| DBT | {% icon iconName="cross" /%} |
| Supported Versions | -- |
| Feature | Status |
| :----------- | :--------------------------- |
| Lineage | Partially via Views |
| Table-level | {% icon iconName="check" /%} |
| Column-level | {% icon iconName="check" /%} |
{% /multiTablesWrapper %}
In this section, we provide guides and references to use the MariaDB connector.
Configure and schedule MariaDB metadata and profiler workflows from the OpenMetadata UI:
- [Requirements](#requirements)
- [Metadata Ingestion](#metadata-ingestion)
- [Data Profiler](/connectors/ingestion/workflows/profiler)
- [Data Quality](/connectors/ingestion/workflows/data-quality)
- [dbt Integration](/connectors/ingestion/workflows/dbt)
{% partial file="/v1.2.0/connectors/ingestion-modes-tiles.md" variables={yamlPath: "/connectors/database/mariadb/yaml"} /%}
## Requirements
### Metadata
To extract metadata the user used in the connection needs to have access to the `INFORMATION_SCHEMA`. By default a user can see only the rows in the `INFORMATION_SCHEMA` that correspond to objects for which the user has the proper access privileges.
```SQL
-- Create user. More details https://mariadb.com/kb/en/create-user/
CREATE USER <username>[@<hostName>] IDENTIFIED BY '<password>';
-- Grant select on a database
GRANT SELECT ON world.* TO '<username>';
-- Grant select on a database
GRANT SELECT ON world.* TO '<username>';
-- Grant select on a specific object
GRANT SELECT ON world.hello TO '<username>';
```
### Profiler & Data Quality
Executing the profiler workflow or data quality tests, will require the user to have `SELECT` permission on the tables/schemas where the profiler/tests will be executed. More information on the profiler workflow setup can be found [here](/connectors/ingestion/workflows/profiler) and data quality tests [here](/connectors/ingestion/workflows/data-quality).
## Metadata Ingestion
{% partial
file="/v1.2.0/connectors/metadata-ingestion-ui.md"
variables={
connector: "MariaDB",
selectServicePath: "/images/v1.2.0/connectors/mariadb/select-service.png",
addNewServicePath: "/images/v1.2.0/connectors/mariadb/add-new-service.png",
serviceConnectionPath: "/images/v1.2.0/connectors/mariadb/service-connection.png",
}
/%}
{% stepsContainer %}
{% extraContent parentTagName="stepsContainer" %}
#### Connection Details
- **Username**: Specify the User to connect to MariaDB. It should have enough privileges to read all the metadata.
- **Password**: Password to connect to MariaDB.
- **Host and Port**: Enter the fully qualified hostname and port number for your MariaDB deployment in the Host and Port field.
- **databaseName**: Optional name to give to the database in OpenMetadata. If left blank, we will use default as the database name.
- **databaseSchema**: databaseSchema of the data source. This is optional parameter, if you would like to restrict the metadata reading to a single databaseSchema. When left blank, OpenMetadata Ingestion attempts to scan all the databaseSchema.
{% partial file="/v1.2.0/connectors/database/advanced-configuration.md" /%}
{% /extraContent %}
{% partial file="/v1.2.0/connectors/test-connection.md" /%}
{% partial file="/v1.2.0/connectors/database/configure-ingestion.md" /%}
{% partial file="/v1.2.0/connectors/ingestion-schedule-and-deploy.md" /%}
{% /stepsContainer %}
{% partial file="/v1.2.0/connectors/troubleshooting.md" /%}
{% partial file="/v1.2.0/connectors/database/related.md" /%}