Configuring MySQL Connection

Overview

 In modern technology, there is a clear need to reuse objects and let the user configure each object  once and repeatedly use it over and over again.
This is the basic assumption of the “Connection” configuration in Totango Customer Data Hub.

Connection to a data source is usually done by Ops or Data teams, and the main idea is that it will be configured once and you can reuse the same connection for several integrations.

Important note, the Data Warehouse integration family is a closed system, therefore, the data source connectors which are created can be re-used for only Data Warehouse integrations and not for other integration families.

Topics covered in this article: 

Creating MySQL Connection

  1. Go to your Totango instance and click on Global Settings > Data Management > Customer Data Hub > Click 'Data Warehouse' and select MySQLmceclip0.png
    (note: you will need Totango admin privileges). 


  2. Create a new connection (or review your existing connections)
    create_new_connection.gif


Configuring MySQL Connection

 

The MySQL connector is a pure DB connection. It means that it is built as a connector and an SQL query which powers this connection.

Common information regarding MySQL can be found here.

Note: It is recommended to create a specific user for fetching data from DB with proper DB access permissions (e.g. user with only-read access to a specific schema or a table).

Creating a MySQL connector include 2 steps:

  1. Create a read-only user with access to the desired schema
  2. Create connector in Totango

Create MySQL User 

Follow these steps to create a read-only user:

  1. Connect to your MySQL DB

  2. To give the user access to the database from any host:
    GRANT SELECT ON table_name.* to 'totango_ro_user'@'%' identified by 'A Secure Password of your choosing';

If you know the hostname or IP address of the host that the collector is will be installed on, type the following command:

GRANT SELECT ON table_name.* to 'totango_ro_user'@'hostname or IP_address' identified by 'A Secure Password of your choosing';

More information about user creation can be found here.

 

Create Connector in Totango

mceclip1.png

  • Name: a meaningful connection name to the MySQL Database, For example, “Company DWH - Customer data”
  • Description: a meaningful description to help you and others understand the essence of this connection.
  • Type: select the MySQL connector from the list.
  • Username: username of user you plan to give access to your DB for Totango App
  • Password: password of your user
  • Schema: The schema where this connector data should be fetched from
  • Hostname: Your DB hostname
  • Port: Enter the port your company uses for MySQL. By default, it is 3306. 

Important note

In case your company uses VPN to allow access to your MySQL database, the Totango system will not be able to access it. If you want the Totango system to retrieve data from a MySQL database, please create an accessible MySQL database outside your network and push only the relevant information to this MySQL database in a secure manner.

 

Customer Data Hub Whitelisting

In the event that your network is behind a firewall, you will need to whitelist our servers so that we may retrieve information from your data warehouse.

Please follow the instructions in this Customer Data Hub IP Whitelisting article to configure your IP whitelist.

 

 

SSL Encryption

All data warehouse connectors support SSL encryption out-of-the-box (no need to configure anything to enable SSL encryption).
Totango connectors will use an SSL encrypted connection in case it is activated and use a non-SSL encrypted connection otherwise.

The implementation logic is as follows:
by default, SSL encryption is used during connecting, if the data warehouse server does not support SSL encryption, then the connection will using an unencrypted connection to stream data from the data warehouse.

Read more on how to configure SSH tunnel for MySQL

 

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request