The Main Tab is used to manage connection information and credentials for Salesforce and the target database.
Specifies the type of target database. Available database targets depend on the version of CopyStorm you have installed.
These parameters are used when authenticating with Salesforce using a Username and Password.
For certificate based authentication, see the Oauth 2.0 JWT Configuration reference.
For SSO-based authentication, see How to Login to Salesforce using SSO.
Prior to running CopyStorm for the first time, create a fresh SQL/Server database.
The only difficult part when copying Salesforce to SQL/Server is constructing the connection string. Clicking on the Connection String Builder will open a form that, if you are running SQL/Server using a standard configuration, will construct a connection string for you.
The connection string can be verified by pressing the “Test SQLServer Connection” button.
The general form of a SQL/Server connection string is:
[server-name[\instance-name][:port-number]][;property=value]*
If you would like to see more information regarding SQL/Server connection strings or are not familiar with Microsoft’s type 4 JDBC driver, these resources may help:
Parameter
Description
Instance Type
Type of Salesforce instance being copied.
Production
Sandbox
Database.com
Username
A Salesforce user. This user must have API privileges. All data visible to this user will be copied to the CapStorm database.
Password
The password for the Salesforce user.
Credential Type
Technique used to find the Salesforce password. The default, Username and Password, stores encrypted credentials in a project’s .copyStorm configuration file. To login to Salesforce using the JWT Oauth flow, change this to “Oauth 2.0 JWT” and see the . To login using an SFDX registered instance, change this to “SFDX Username or Alias” and see the .
Salesforce Batch Size
Default number of records to read from Salesforce in a single batch. The default, 2000, is the maximum supported by Salesforce and should not be changed unless the host machine has severe memory limitations. Decreasing this value will increase the number of API calls to Salesforce.
Max Timeout
Parameter
Description
Connection String
JDBC connection string required to create a CopyStorm database.
Connection String Builder
Clicking on this button launches a dialog that helps create a valid connection string.
Username

Security Token
Optional security token supplied by Salesforce.
Alternate Host
If your connection to Salesforce does not use one of the standard endpoint (login.salesforce.com or test.salesforce.com) then you must specify your endpoint as an alternate host. Example:
capstorm.my.salesforce.com
Advanced Parameters
Launch this dialog to set:
Proxy information
Password storage model
Secondary Salesforce connection parameters
Number of seconds to wait for a response from Salesforce.
Describe Batch Size
Number of table descriptors to read from Salesforce in a single batch.
Apache/HttpClient
If checked then the Apache/HttpClient will be used to communicate with Salesforce instead of the technique built into the WSC library. It is unusual to need the Apache/HttpClient.
Proxy Host
Optional name or IP address of a proxy host
Proxy Port
Optional port on which a proxy host is listening.
Proxy User
Optional user name when a proxy requires it.
Proxy Password
Optional password when a proxy requires it.
CopyStorm database username.
Password
CopyStorm database password.
Schema
Default schema to use. Note that this parameter is not supported by all databases.

Prior to running CopyStorm for the first time, create a fresh Oracle database.
The only complicated configuration required in the CopyStorm Main tab is the Oracle connection string. Clicking on the Connection String Builder button will open a form that will construct the connection string for you, given database information.
You will likely need one of these forms:
myDomain.com:1521:orcl
myDomain.com:1521:xe
localhost:1521
The connection string can be verified by pressing the “Test Oracle Connection” button.
The following is a screen shot of a working Oracle setup on one of our test computers:
Prior to running CopyStorm for the first time, create a fresh PostgreSQL database.
The only complicated configuration required in the CopyStorm Main tab is the PostgreSQL connection string. Clicking on the Connection String Builder button will open a form that will construct the connection string for you, given database information.
The general form of a PostgreSQL connection string is:
[//host[:port]][/database-name]
Example:
//localhost/CopystormBackupDatabase
By default, a PostgreSQL connection will use the public schema. This can be overridden by entering a schema name.
The following is a screen shot of a working PostgreSQL setup on one of our test computers:


Before running CopyStorm for the first time, create a dedicated Snowflake database for your Salesforce data.
Compared to the other Database types, Snowflake’s connection string is more complex and carries more information. For this reason, it is recommended to use the Connection String Builder to create a valid Connection String.
After clicking on the “Connection String Builder” button, a dialog menu will open, as seen below.
Capstorm includes a MySQL driver from the MariaDB project to communicate with both Oracle’s MySQL product and with MariaDB.
Since MariaDB is provided by the original authors of MySQL and strives to maintain compatibility with Oracle’s MySQL, the driver packaged with CopyStorm is probably the only driver you will need. However, if you are encountering compatibility issues or other problems with MariaDB’s MySQL driver, you can download and install Oracle’s MySQL driver by hand.
CopyStorm does not package this driver with the product due to Oracle’s licensing policy for ISV’s, which makes it difficult to package the Oracle MySQL JDBC driver with a product.
To install the Oracle MySQL JDBC driver:
Delete the file lib/mariadb-java-client-*.jar from the CopyStorm installation directory.
Restart CopyStorm.
Choose MySQL as the database type.
CopyStorm will ask you if it’s OK to download and install Oracle’s JDBC driver.
If you would prefer to install Oracle’s JDBC driver by hand:
Go to Oracle’s download page
Download and unzip the driver.
Copy the jar file to CopyStorm’s lib directory.
All MySQL JDBC drivers communicate with MySQL using TCP/IP. If CopyStorm is having trouble connecting to the MySQL database, you may not have TCP/IP enabled. If so, there are a number of resources providing instructions on enabling this feature (the manual for your version of MySQL, running a web search for “MySQL enable TCP”, etc…).
The only complicated configuration required in the CopyStorm Main tab is the MySQL connection string. Clicking on the Connection String Builder button will open a form that will construct the connection string for you, given database information.
The connection string can be verified by pressing the “Test MySQL Connection” button.
The format of a MySQL connection string is:
//[host][:port]/[database-name]
Example:
//localhost/MyCopyStormDatabase
Restart CopyStorm
Server Name
The IP Address, URL, or server name of the snowflake instance. Port number is optional.
Database Name
The name of the Snowflake database that CopyStorm will populate with Salesforce data.
Private Key File
The file path to the Snowflake Private key. For more information on Private Keys and Snowflake’s key-pair authentication, refer to .
Key File Password
If your Private key was configured to require a password for use in authentication, enter it here. If your Snowflake Private key was configured as to not require a password, this field can be left blank.
Warehouse (optional)
The name of a Warehouse in Snowflake that you wish to use. For more information on Snowflake Warehouses, refer to .
Proxy Host (optional)
The IP address, or URL of a proxy used to connect to a Snowflake instance.
Proxy Port (optional)
The port number associated with a proxy used to connect to a Snowflake instance.
Proxy User (optional)
The username to authenticate a request with a proxy used to connect to a Snowflake instance.
Proxy Password (optional)
The password used to authenticate a request to a proxy used to connect to a Snowflake instance
Proxy Protocol (optional)
The protocol by which a connection will be made to a proxy used to connect to a Snowflake instance. Select either HTTP, or HTTPS.

