> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ClickHouse를 사용해 MySQL 데이터를 Parquet, CSV 또는 JSON으로 내보내는 방법

> `clickhouse-local` 도구를 사용해 MySQL 데이터를 Parquet, CSV 또는 JSON 같은 포맷으로 빠르고 효율적으로 내보내는 방법을 알아봅니다.

{frontMatter.description}

<div id="exporting-mysql-data-to-parquet-csv-or-json-using-clickhouse">
  ## ClickHouse를 사용해 MySQL 데이터를 Parquet, CSV 또는 JSON으로 내보내기
</div>

`clickhouse-local` 도구를 사용하면 MySQL에서 데이터를 빠르고 쉽게 읽어 Parquet, CSV, JSON을 비롯한 다양한 포맷으로 출력할 수 있습니다. 이 섹션에서는 다음을 수행합니다.

* 데이터를 읽기 위해 [`mysql` 테이블 함수](/docs/ko/reference/functions/table-functions/mysql)를 사용합니다
* `INTO OUTFILE _filename_ FORMAT` 절을 사용해 원하는 출력 형식을 지정합니다

`clickhouse-local` 도구는 ClickHouse 바이너리에 포함되어 있습니다. 다음을 사용해 다운로드하십시오.

```bash theme={null}
curl https://clickhouse.com/ | sh
```

<div id="export-mysql-to-parquet">
  ## MySQL을 Parquet로 내보내기
</div>

`mysql` 테이블 함수는 MySQL 인스턴스에 전송한 쿼리 결과를 바탕으로 테이블을 생성합니다. 예를 들면 다음과 같습니다:

```bash theme={null}
SELECT *
FROM
   mysql(
    'localhost:3306',
    'my_sql_database',
    'my_sql_table',
    'user',
    'password'
);
```

이 쿼리의 출력은 `INTO OUTFILE`을 사용해 파일로 저장할 수 있습니다. 생성할 파일의 포맷을 지정하려면 `FORMAT`을 사용하십시오. MySQL 테이블 전체 내용을 가져와 Parquet 파일로 내보내보겠습니다:

```bash theme={null}
./clickhouse local -q "SELECT * FROM
   mysql(
    'localhost:3306',
    'my_sql_database',
    'my_sql_table',
    'user',
    'password'
)
INTO OUTFILE 'my_output_file.parquet'"
```

<Note>
  출력 파일 이름에 `.parquet` 확장자가 있으므로 ClickHouse는 Parquet 포맷을 사용한다고 가정합니다. 따라서 `FORMAT Parquet` 절은 생략했습니다.
</Note>

<div id="export-mysql-to-csv">
  ## MySQL을 CSV로 내보내기
</div>

Parquet의 경우와 동일하지만, 이번에는 파일 이름에 `.csv` 확장자를 사용합니다. 그러면 ClickHouse가 쉼표로 구분된 출력 형식이 필요하다고 인식하여 해당 방식으로 데이터를 파일에 기록합니다:

```bash theme={null}
./clickhouse local -q "SELECT * FROM
   mysql(
    'localhost:3306',
    'my_sql_database',
    'my_sql_table',
    'user',
    'password'
)
INTO OUTFILE 'my_output_file.csv'"
```

<div id="export-mysql-to-json">
  ## MySQL을 JSON으로 내보내기
</div>

MySQL 데이터를 JSON으로 내보내려면 파일 이름의 확장자를 `jsonl` 또는 `ndjson`로 바꾸기만 하면 됩니다:

```bash theme={null}
./clickhouse local -q "SELECT * FROM
   mysql(
    'localhost:3306',
    'my_sql_database',
    'my_sql_table',
    'user',
    'password'
)
INTO OUTFILE 'my_output_file.ndjson'"
```

`clickhouse-local` 도구는 단순하면서도 매우 강력하다는 점이 인상적입니다. MySQL과 같은 데이터베이스에서 데이터를 쉽게 읽어 [다양한 출력 형식](/docs/ko/reference/formats/index)으로 내보낼 수 있습니다.
