> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> 모든 MariaDB 인스턴스를 ClickPipes 소스로 설정합니다

# 일반 MariaDB 소스 설정 가이드

<Info>
  지원되는 제공업체(사이드바 참조) 중 하나를 사용하는 경우, 해당 제공업체의 전용 가이드를 참조하십시오.
</Info>

<div id="enable-binlog-retention">
  ## 바이너리 로그 보존 활성화
</div>

바이너리 로그에는 MariaDB 서버 인스턴스에서 수행된 데이터 변경 정보가 포함되며, 복제에 필요합니다.

MariaDB 인스턴스에서 바이너리 로깅을 활성화하려면 다음 설정이 구성되어 있는지 확인하십시오.

```sql theme={null}
server_id = 1               -- 1 이상; 0이 아닌 값
log_bin = ON
binlog_format = ROW
binlog_row_image = FULL
binlog_row_metadata = FULL  -- 10.5.0에서 도입됨
expire_logs_days = 1        -- 1 이상; 0으로 설정하면 로그가 영구 보존됨
```

이러한 설정을 확인하려면 다음 SQL 명령을 실행하세요:

```sql theme={null}
SHOW VARIABLES LIKE 'server_id';
SHOW VARIABLES LIKE 'log_bin';
SHOW VARIABLES LIKE 'binlog_format';
SHOW VARIABLES LIKE 'binlog_row_image';
SHOW VARIABLES LIKE 'binlog_row_metadata';
SHOW VARIABLES LIKE 'expire_logs_days';
```

값이 일치하지 않으면 설정 파일(일반적으로 `/etc/my.cnf` 또는 `/etc/my.cnf.d/mariadb-server.cnf`)에서 해당 값을 설정할 수 있습니다:

```ini theme={null}
[mysqld]
server_id = 1
log_bin = ON
binlog_format = ROW
binlog_row_image = FULL
binlog_row_metadata = FULL  ; 10.5.0 이상에서만 사용 가능
expire_logs_days = 1
```

원본 데이터베이스가 레플리카인 경우 `log_slave_updates`도 반드시 활성화해야 합니다.

변경 사항이 적용되도록 하려면 MariaDB 인스턴스를 반드시 재시작해야 합니다.

<Note>
  `binlog_row_metadata` 설정이 아직 도입되지 않았기 때문에 MariaDB \<= 10.4에서는 컬럼 제외를 지원하지 않습니다.
</Note>

<div id="configure-database-user">
  ## 데이터베이스 사용자 구성
</div>

root 사용자로 MariaDB 인스턴스에 연결한 다음, 아래 명령을 실행합니다.

1. ClickPipes 전용 사용자를 생성합니다.

   ```sql theme={null}
   CREATE USER 'clickpipes_user'@'%' IDENTIFIED BY 'some_secure_password';
   ```

2. 스키마 권한을 부여합니다. 다음 예시는 `clickpipes` 데이터베이스에 대한 권한을 보여줍니다. 복제하려는 각 데이터베이스와 호스트에 대해 이 명령을 반복해서 실행하십시오.

   ```sql theme={null}
   GRANT SELECT ON `clickpipes`.* TO 'clickpipes_user'@'%';
   ```

3. 사용자에게 복제 권한을 부여합니다.

   ```sql theme={null}
   GRANT REPLICATION CLIENT ON *.* TO 'clickpipes_user'@'%';
   GRANT REPLICATION SLAVE ON *.* TO 'clickpipes_user'@'%';
   ```

<Note>
  `clickpipes_user`와 `some_secure_password`를 원하는 사용자 이름과 비밀번호로 바꾸십시오.
</Note>

<div id="ssl-tls-configuration">
  ## SSL/TLS 구성(권장)
</div>

SSL 인증서는 MariaDB 데이터베이스에 대한 보안 연결을 보장합니다. 구성은 인증서 유형에 따라 달라집니다.

**신뢰할 수 있는 인증 기관(DigiCert, Let's Encrypt 등)** - 추가 구성이 필요하지 않습니다.

**내부 인증 기관** - IT 팀에서 루트 CA 인증서 파일을 받으십시오. 새 MariaDB ClickPipe를 생성할 때 ClickPipes UI에서 해당 파일을 업로드하십시오.

**자체 호스팅 MariaDB** - MariaDB 서버에서 CA 인증서를 복사하십시오(`my.cnf`의 `ssl_ca` 설정에서 경로를 확인하십시오). 새 MariaDB ClickPipe를 생성할 때 ClickPipes UI에서 해당 파일을 업로드하십시오. 호스트에는 서버의 IP 주소를 사용하십시오.

**11.4부터 시작하는 자체 호스팅 MariaDB** - 서버에 `ssl_ca`가 설정되어 있으면 위 옵션을 따르십시오. 그렇지 않으면 적절한 인증서를 프로비저닝할 수 있도록 IT 팀에 문의하십시오. 최후의 수단으로 ClickPipes UI의 "인증서 검증 건너뛰기" 토글을 사용하십시오(보안상 권장되지 않음).

SSL/TLS 옵션에 대한 자세한 내용은 [FAQ](/ko/integrations/clickpipes/mysql/faq#tls-certificate-validation-error)를 확인하십시오.

<div id="whats-next">
  ## 다음 단계
</div>

이제 [ClickPipe를 생성](/ko/integrations/clickpipes/mysql/index)하고 MariaDB 인스턴스의 데이터를 ClickHouse Cloud로 수집하기 시작할 수 있습니다.
ClickPipe 생성 과정에서 필요하므로 MariaDB 인스턴스를 설정할 때 사용한 연결 정보를 반드시 기록해 두십시오.
