2021-08-01 14:27:44 -07:00
---
description: This guide will help install MySQL connector and run manually
---
# MySQL
{% hint style="info" %}
**Prerequisites**
OpenMetadata is built using Java, DropWizard, Jetty, and MySQL.
1. Python 3.7 or above
{% endhint %}
2021-11-13 23:03:20 +05:30
### Install from PyPI
2021-08-01 14:27:44 -07:00
2021-08-12 13:53:29 -07:00
{% tabs %}
{% tab title="Install Using PyPI" %}
2021-08-01 14:27:44 -07:00
```bash
2021-08-12 13:53:29 -07:00
pip install 'openmetadata-ingestion[mysql]'
```
{% endtab %}
{% endtabs %}
2021-08-01 14:27:44 -07:00
### Run Manually
```bash
2021-11-13 23:03:20 +05:30
metadata ingest -c ./examples/workflows/mysql.json
2021-08-01 14:27:44 -07:00
```
### Configuration
{% code title="mysql.json" %}
```javascript
{
"source": {
"type": "mysql",
"config": {
2021-08-05 19:56:33 +05:30
"username": "openmetadata_user",
"password": "openmetadata_password",
2021-09-19 08:43:31 +05:30
"database": "openmetadata_db",
2021-08-01 14:27:44 -07:00
"service_name": "local_mysql",
2021-11-13 23:03:20 +05:30
"data_profiler_enabled": "true",
"data_profiler_offset": "0",
"data_profiler_limit": "50000",
2021-08-14 20:13:00 +00:00
"filter_pattern": {
2021-09-19 08:43:31 +05:30
"excludes": ["mysql.*", "information_schema.*", "performance_schema.*", "sys.*"]
2021-08-01 14:27:44 -07:00
}
}
},
...
```
{% endcode %}
1. **username** - pass the MySQL username. We recommend creating a user with read-only permissions to all the databases in your MySQL installation
2. **password** - password for the username
3. **service\_name** - Service Name for this MySQL cluster. If you added MySQL cluster through OpenMetadata UI, make sure the service name matches the same.
2021-08-14 20:13:00 +00:00
4. **filter\_pattern** - It contains includes, excludes options to choose which pattern of datasets you want to ingest into OpenMetadata
2021-11-13 23:03:20 +05:30
5. **data\_profiler\_enabled** - Enable data-profiling (Optional). It will provide you the newly ingested data.
6. **data\_profiler\_offset** - Specify offset.
7. **data\_profiler\_limit** - Specify limit.
2021-08-01 14:27:44 -07:00
2021-08-12 13:53:29 -07:00
## Publish to OpenMetadata
2021-08-13 15:48:38 +00:00
2021-08-16 16:52:35 +00:00
Below is the configuration to publish MySQL data into the OpenMetadata service.
2021-08-12 14:11:56 -07:00
2021-11-13 23:03:20 +05:30
Add optionally `pii` processor and `metadata-rest` sink along with `metadata-server` config
2021-08-12 13:53:29 -07:00
{% code title="mysql.json" %}
```javascript
{
"source": {
"type": "mysql",
"config": {
"username": "openmetadata_user",
"password": "openmetadata_password",
2021-09-19 08:43:31 +05:30
"database": "openmetadata_db",
2021-08-12 13:53:29 -07:00
"service_name": "local_mysql",
2021-11-13 23:03:20 +05:30
"data_profiler_enabled": "true",
"data_profiler_offset": "0",
"data_profiler_limit": "50000",
2021-08-14 20:13:00 +00:00
"filter_pattern": {
2021-09-19 08:43:31 +05:30
"excludes": ["mysql.*", "information_schema.*", "performance_schema.*", "sys.*"]
2021-08-12 13:53:29 -07:00
}
}
},
"sink": {
2021-09-07 17:52:06 +00:00
"type": "metadata-rest",
2021-09-19 08:43:31 +05:30
"config": {}
2021-08-12 13:53:29 -07:00
},
"metadata_server": {
"type": "metadata-server",
"config": {
"api_endpoint": "http://localhost:8585/api",
2021-09-19 08:43:31 +05:30
"auth_provider_type": "no-auth"
2021-08-12 13:53:29 -07:00
}
}
}
```
{% endcode %}