# Exchange MySQL query results through files

Use MySQL's own client or an export tool to produce a file, then import that file into Coordinator DB. Coordinator DB does not expose a MySQL connection table function. CSV, row-oriented JSON and Parquet are useful interchange choices when both tools agree on their encoding.

## Define a stable export

Select explicit source columns and a bounded snapshot or key range. Document how the exporter represents nulls, decimals, timestamps, binary data and embedded delimiters. A filename ending in `.csv` does not identify the quoting or null conventions by itself.

Create the destination table with intended native types and import a representative sample. For a CSV file with column names, choose `csv_with_names` rather than treating its header as a data row. Use an external converter if the source tool cannot produce the required format.

## Verify before a full transfer

Compare row counts for the same source boundary and inspect values containing commas, quotes, Unicode and nulls. Preserve exact decimals as exact values rather than routing them through a floating-point intermediate. Export the validated Coordinator DB result in another format only after these checks pass.

Track completed ranges and source versions in the importer so retries can be reconciled.

See [CSV exchange](https://coordinatordb.com/docs/guides/clickhouse/data-formats/csv-tsv), [JSON loading](https://coordinatordb.com/docs/guides/clickhouse/data-formats/json/loading) and [Parquet exchange](https://coordinatordb.com/docs/guides/clickhouse/data-formats/parquet).
