Console Mode

Console Mode allows you to script and automate your migrations without ever needing to use our web-based user interface.

Lorem ipsum dolor sit amet
Scripting and Automation

All of the functionality exposed in the web-based UI is available in the console mode as well.

How does it work?

Run the OmniLoader executable with an additional -job parameter specifying the path to the JSON file. An example (Windows variant):

OmniLoader.exe -job \path\to\the\file.json

By default, the console will copy all the tables from all source databases into the target database.

Of course, this behavior can be changed. You can opt to specify a particular list of tables to copy. Each table can have its own specific customization parameters applied. More information on this is available in our documentation. If several source databases are used, instead of a single Source element, you should use Sources with an array of items.

How is Console Mode useful for you?

Console Mode uses straightforward, declarative JSON files that display all your migration settings in one place. Instead of navigating through multiple screens, you can see every customization at a glance.

This transparency is particularly valuable in team environments. Colleagues can quickly understand project requirements without hunting through configuration screens.

As an added benefit, JSON project files integrate seamlessly with source control systems, providing security and audit capabilities for your migration configurations.

{
  "SqlServer": {
    "Server": "R12",
    "Database": "AdventureWorks2017",
    "AuthenticationType": "SqlServer",  // Windows|SqlServer
    "Username": "sa",
    "Password": "test"
  }
}
{
  "Oracle": {
    "ConnectionType": "Direct", // Direct|OracleClient
    "Server": "{{server ip, or empty if localhost}}",
    "Port": 11522,
    "Sid": "{{sid}}", // or "ServiceName": "{{service name}}",
    "Username": "sys",
    "Password": "{{password}}",
    "Role": "SysDBA"  // Default|SysDBA|SysOPER
  }
}
{
  "Synapse": {
    "Server": "{{yourserver}}.database.windows.net,
    "Database": "{{database name}}",
    "Username": "{{user}}",
    "Password": "{{password}}",
    "AuthenticationType": "sqlserver",
    "StorageType": "adlsv2",  // Local|AzureBlob|ADLSv2
    "StorageFormat": "parquet", // CSV|Parquet
    "StorageCompression": "snappy", // None|Snappy|GZip
    "ConnectionString": "{{conn string from storage explorer}}",
    "Container": "{{container}}",
    "ContainerDirectory": "{{directory name in the container}}"
  }
}
{
  "PostgreSQL": {
    "Server": "localhost",
    "Port": 5432,
    "Database": "{{db name}}",
    "Username": "postgres",
    "Password": "{{password}}"
  }
}
{
  "Source": { ... },
  "Target": { ... },
  "Options": {
    "SummaryLogFilename": "summary.log",
    "ErrorLogFilename": "error.log",
    "WarningLogFilename": "warning.log",
    "SqlLogFilename": "sql.log",
    "ErrorSqlLogFilename": "errorsql.log",
    "JsonLogFilename": "details.json",
    "SchemaMapping": "person=people",
    "TableNameMapping": "production=prod",
    "ColumnNameMapping": "parent=parent_id",
    "DataTypeMapping": "varchar=nvarchar;char(10)=char(30)",
    "DefaultValuesMapping": "now=current_timestamp",
    "TableSlices": 16,
    "TableSliceMinMB": 100,
    "FileTableRowLimit": 100000,
    "DryRun": false,
    "DataCopyingMode": "Everything"  // None|Everything|Delta
  }
}
Lorem ipsum dolor sit amet
Omni Loader console arguments

Omni Loader can be invoked as a console application to execute a job and return. This is very useful for automated migrations and migrations as part of CI/CD workflows.

--job {path-to-json-file}

A JSON job specification to use. A typical example would be:

OmniLoader.exe --job c:\jobs\sql2synapse.json
graphic icon
Sisyphus

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris imperdiet egestas blandit. Suspendisse rhoncus congue lorem ut malesuada.

Avatar image
Candice Doe
Product Manager, Sisyphus
Save time, increase efficiency.

Ready to get started?

FAQ

Frequently asked questions

By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.