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

# ETL: Connecting to MySQL

> Connect MySQL databases to Integrate.io ETL for reading and writing data. Configure user permissions, firewall rules, and connection settings.

* Create a user and grant it minimum permissions required for Integrate.io ETL to read or write data from the database.
* Allow access from [Integrate.io ETL's IP addresses](/etl/integrateio-etls-ip-list/) to your MySQL database port (Refer to [this](/etl/allowing-integrateio-etl-access-to-my-server-behind-a-firewall/) article if you'd prefer to create an SSH tunnel or reverse SSH tunnel.)

<Frame>
  <iframe className="w-full aspect-video rounded-xl" src="https://fast.wistia.com/embed/iframe/m6d6rzdwtm" title="Allowing Integrate.io ETL access to MySQL Databases" allow="autoplay; fullscreen" allowFullScreen />
</Frame>

## To create a MySQL database connection in Integrate.io ETL

<Steps>
  <Step>
    Click the Connections icon (lightning bolt) on the top left menu.
  </Step>

  <Step>
    To create a connection, click **New connection**.

    <Frame>
      <img src="https://mintcdn.com/integrateio/K1OxIkBgHF64pvnH/images/connectivity-and-security/image-41.webp?fit=max&auto=format&n=K1OxIkBgHF64pvnH&q=85&s=3a8d7f0144ebba1e3957aeb86bff5b3d" alt="New connection button in the Connections page" width="1200" height="830" data-path="images/connectivity-and-security/image-41.webp" />
    </Frame>
  </Step>

  <Step>
    Select MySQL and name the connection.

    <Frame>
      <img src="https://mintcdn.com/integrateio/K1OxIkBgHF64pvnH/images/connectivity-and-security/image-42.webp?fit=max&auto=format&n=K1OxIkBgHF64pvnH&q=85&s=ed8b6ba7c710a57c242da8eb8d19156a" alt="Selecting MySQL as the connection type" width="1200" height="830" data-path="images/connectivity-and-security/image-42.webp" />
    </Frame>
  </Step>

  <Step>
    Select your access type (direct connection if you've whitelisted Integrate.io ETL's IP addresses.)
  </Step>

  <Step>
    Enter your MySQL database host name or IP address.
  </Step>

  <Step>
    Enter the database name.
  </Step>

  <Step>
    Enter the username.
  </Step>

  <Step>
    Enter the user's password.
  </Step>

  <Step>
    Click **Test Connection** to make sure the connection details are correct.
  </Step>

  <Step>
    Click **Create connection** to create the connection.

    <Frame>
      <img src="https://mintcdn.com/integrateio/K1OxIkBgHF64pvnH/images/connectivity-and-security/image-43.webp?fit=max&auto=format&n=K1OxIkBgHF64pvnH&q=85&s=c21a9f66e5c747a9db0ca7f8079b5b8a" alt="MySQL connection configuration form with host, database, and credentials" width="1200" height="830" data-path="images/connectivity-and-security/image-43.webp" />
    </Frame>

    <Frame>
      <img src="https://mintcdn.com/integrateio/K1OxIkBgHF64pvnH/images/connectivity-and-security/image-44.webp?fit=max&auto=format&n=K1OxIkBgHF64pvnH&q=85&s=14cf546cca4b61d78b36e6a58299e0a5" alt="Successful MySQL connection test confirmation" width="1200" height="830" data-path="images/connectivity-and-security/image-44.webp" />
    </Frame>
  </Step>
</Steps>
