VOOZH about

URL: https://www.cdata.com/kb/tech/mysql-cloud-salesforce-connect.rst

⇱ Edit and Search External MySQL Objects in Salesforce Connect


Edit and Search External MySQL Objects in Salesforce Connect

πŸ‘ Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Use CData Connect AI to securely provide OData feeds of MySQL data to smart devices and cloud-based applications. Use the CData Connect and Salesforce Connect to create MySQL Data objects that you can access from apps and the dashboard.

CData Connect AI, enables you to access MySQL data from cloud-based applications like the Salesforce console and mobile applications like the Salesforce Mobile App. In this article, you will use CData Connect AI and Salesforce Connect to access external MySQL objects alongside standard Salesforce objects.

Connect to MySQL from Salesforce

To work with live MySQL data in Salesforce Connect, we need to connect to MySQL from Connect AI, provide user access to the connection, and create a Workspace for the MySQL data.

Connect to MySQL from Connect AI

CData Connect AI uses a straightforward, point-and-click interface to connect to data sources.

  1. Log into Connect AI, click Sources, and then click Add Connection
  2. πŸ‘ Adding a Connection
  3. Select "MySQL" from the Add Connection panel
  4. πŸ‘ Selecting a data source
  5. Enter the necessary authentication properties to connect to MySQL.

    The CData Provider supports connecting to on-premises and cloud-hosted versions of MySQL such as Amazon RDS for MySQL, Google Cloud SQL for MySQL, Azure Database for MySQL, or Oracle MySQL HeatWave. The Server and Port properties must be set to a MySQL server. If IntegratedSecurity is set to false, then User and Password must be set to valid user credentials. Optionally, Database can be set to connect to a specific database. If not set, tables from all databases will be returned.

    SSH Connectivity for MySQL

    You can use SSH (Secure Shell) to authenticate with MySQL, whether the instance is hosted on-premises or in supported cloud environments. SSH authentication ensures that access is encrypted (as compared to direct network connections).

    SSH Connections to MySQL in Password Auth Mode

    To connect to MySQL via SSH in Password Auth mode, set the following connection properties:

    • User: MySQL User name
    • Password: MySQL Password
    • Database: MySQL database name
    • Server: MySQL Server name
    • Port: MySQL port number like 3306
    • UserSSH: "true"
    • SSHAuthMode: "Password"
    • SSHPort: SSH Port number
    • SSHServer: SSH Server name
    • SSHUser: SSH User name
    • SSHPassword: SSH Password

    SSH Connections to MySQL in Public Key Auth Mode

    To connect to MySQL via SSH in Password Auth mode, set the following connection properties:

    • User: MySQL User name
    • Password: MySQL Password
    • Database: MySQL database name
    • Server: MySQL Server name
    • Port: MySQL port number like 3306
    • UserSSH: "true"
    • SSHAuthMode: "Public_Key"
    • SSHPort: SSH Port number
    • SSHServer: SSH Server name
    • SSHUser: SSH User name
    • SSHClientCret: the path for the public key certificate file
    πŸ‘ Configuring a connection (Salesforce is shown)
  6. Click Save & Test
  7. Navigate to the Permissions tab in the Add MySQL Connection page and update the User-based permissions. πŸ‘ Updating permissions

Add a Personal Access Token

When connecting to Connect AI through the REST API, the OData API, or the Virtual SQL Server, a Personal Access Token (PAT) is used to authenticate the connection to Connect AI. It is best practice to create a separate PAT for each service to maintain granularity of access.

  1. Click on the Gear icon () at the top right of the Connect AI app to open the settings page.
  2. On the Settings page, go to the Access Tokens section and click Create PAT.
  3. Give the PAT a name and click Create. πŸ‘ Creating a new PAT
  4. The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.

Configure MySQL Endpoints for Salesforce Connect

After connecting to MySQL, create a workspace for your desired table(s).

  1. Navigate to the Workspaces page and click Add to create a new Workspace (or select an existing workspace). πŸ‘ The Workspaces page.
    πŸ‘ Adding a new Workspace.
  2. Click Add to add new assets to the Workspace.
  3. Select the MySQL connection (e.g. MySQL1) and click Next. πŸ‘ Selecting an Asset (Salesforce is shown).
  4. Select the table(s) you wish to work with and click Confirm. πŸ‘ Selecting Tables (Salesforce is shown).
  5. Make note of the OData Service URL for your workspace, e.g. https://cloud.cdata.com/api/odata/{workspace_name}

With the connection, PAT, and Workspace configured, you are ready to connect to MySQL data from Salesforce Connect.

Connect to MySQL Data as an External Data Sources

Follow the steps below to connect to the feed produced by Connect AI.

  1. Log into Salesforce and click Setup -> Integrations -> External Data Sources.
  2. Click Now External Data Sources.
  3. Enter values for the following properties:
    • External Data Sources: Enter a label to be used in list views and reports.
    • Name: Enter a unique identifier.
    • Type: Select the option "Salesforce Connect: OData 4.0".
    • URL: Enter the URL to the OData endpoint of Connect AI: https://cloud.cdata.com/api/odata/{workspace_name}
  4. Select the Writable External Objects option.
  5. Select JSON in the Format menu.
  6. In the Authentication section, set the following properties:
    • Identity Type: If all members of your organization will use the same credentials to access Connect AI, select "Named Principal". If the members of your organization will connect with their own credentials, select "Per User".
    • Authentication Protocol: Select Password Authentication to use basic authentication.
    • Certificate: Enter or browse to the certificate to be used to encrypt and authenticate communications from Salesforce to your server.
    • Username: Enter a CData Connect AI username (e.g. [email protected]).
    • Password: Enter the user's PAT.
πŸ‘ Configuration settings for the data source (NetSuite is shown)

Synchronize MySQL Objects

After you have created the external data source, follow the steps below to create MySQL external objects that reflect any changes in the data source. You will synchronize the definitions for the MySQL external objects with the definitions for MySQL tables.

  1. Click the link for the external data source you created.
  2. Click Validate and Scan.
  3. Select the MySQL tables you want to work with as external objects.
πŸ‘ Select external objects (NetSuite is shown)

Access MySQL Data as Salesforce Objects

After adding MySQL data as an external data source and syncing MySQL tables as external objects, you can use the external MySQL objects just as you would standard Salesforce objects.

Simplified Access to MySQL Data from Cloud Applications

At this point, you have a direct, cloud-to-cloud connection to live MySQL data from Salesforce. For more information on gaining simplified access to data from more than 100 SaaS, Big Data, and NoSQL sources in cloud applications like Salesforce, refer to our Connect AI page.