Frequently Asked Questions

[MSSQL-PostgreSQL Sync]  [Download]  [Buy]

On this page you can find the most frequently asked questions regarding MSSQL-PostgreSQL Sync. If your question is not answered here, please contact us via Feedback Form

What versions of MS SQL are supported?
MSSQL-PostgreSQL Sync works with all versions of MS SQL including Azure SQL.
Go to Top

What versions of PostgreSQL are supported?
MSSQL-PostgreSQL Sync works with all versions of PostgreSQL including PaaS variations such as Heroku.
Go to Top

Does MSSQL-PostgreSQL Sync require MS SQL server installation?
MSSQL-PostgreSQL Sync requires MS SQL environment (server or client components of MS SQL must be installed on the same machine where you run MSSQL-PostgreSQL Sync from).
Go to Top

What is "full" and "incremental" synchronization?
MSSQL-PostgreSQL Sync uses full synchronization to make source and destination tables identical at first run, when the program does not have information about difference between those two tables. Full synchronization includes two phases:

If "drop synchronization" is OFF, the second step is omitted. Full synchronization can take a long time on large tables since it requires reading entire source and destination tables record by record.

Incremental synchronization updates only rows that were inserted, updated or deleted in the source table. This option is available starting from the second run of MSSQL-PostgreSQL Sync, after the program prepared all necessary objects to store history of changes.
Go to Top

How to specify custom MS SQL port (other than 1433)?
You can specify custom port on 'Step 1 of 5' wizard page in 'MS SQL Server' field as follows:
 
Sql_server_name,1234
 
where 1234 is the custom port.
Go to Top

All table names include schema name as a prefix. How can I avoid it?
By default the program lists all tables found in the database. Because different schemas could contain tables with the same name, MSSQL-PostgreSQL Sync compose full table name as [schema name].[table name] to guaranty that it is unique. If you need to work with tables owned by the user specified, select "View tables owned by the user" checkbox on "Select Databases" wizard page. This will force the program to not include schema name as prefix.
Go to top

I can see strange table "__history__" and some triggers created in the database being synchronized. Why?
MSSQL-PostgreSQL Sync creates this table and triggers in order to implement incremental synchronization i.e. synchronize only the data that has been updated since previous run.
Go to top

What is the difference between synchronization in MSSQL-to-PostgreSQL and MSSQL-PostgreSQL Sync?
MSSQL-to-PostgreSQL implements only full one-direction synchronization from MS SQL to PostgreSQL and it cannot do incremental synchronization in next runs. MSSQL-PostgreSQL Sync implements full bi-directional synchronization between MS SQL and PostgreSQL. Also, it can do incremental synchronization i.e. update only data being changed.
Go to top

After running full synchronization in demo version I can see that source and destination tables are not identical. Why?
Demo version of MSSQL-PostgreSQL Sync scans only first 50 rows in each table for synchronization purpose. This limitation does not appear in full version of the product.
Go to top

How can MSSQL-PostgreSQL Sync connect to Azure SQL?
See How to connect to Azure SQL article for related information.
Go to top

Does MSSQL-PostgreSQL Sync support automation?
The product does not support automation directly. However, there is console version of the program m_sagent.exe in the installation directory. It supports command line arguments and can be called from any script. So, it is possible to write a simple batch script and execute it recurrently using Windows Task Scheduler. Please refer to "Command line" article of the product documentation to learn more about m_sagent.exe.
Go to Top

How to uninstall MSSQL-PostgreSQL Sync?
If you need to remove MSSQL-PostgreSQL Sync products from your computer, you can use "Add or Remove Programs" option in the Windows Control Panel. Go to top