The process of moving database between different DBMS or computer systems is called database migration. Nowadays many companies need to migrate databases for a lot of reasons, such as server hardware replacement, maintenance or upgrade, update of application environment or data center relocation. The database migration process includes transfer of all meta-objects, properties and categories: table definitions, data, indexes, constraints, views, triggers, stored procedures and functions, user accounts, roles and permissions.
Database migration can be implemented manually or automated by using special software. Manual approach to the process consists of the following steps:
- table definitions are exported from the source database in form of SQL statements along with corresponding indexes and constraints
- those SQL statements are converted into the target format and imported to the destination database
- data from the source tables is exported into comma separated values (CSV) files as an intermediate storage
- if it is necessary, the data is transformed according to the destination format and then loaded to the target tables
- views, stored procedures/functions and triggers are extracted from the original database in form of SQL statements and code
- those statements and code are converted into the target format and loaded to the destination database
After database migration to the new system is completed, verification of the resulting data is necessary to make sure the database has been transferred properly. On this stage data integrity and appropriate supports for corresponding applications should be checked.
In order to automate the process flow of database migration some dedicated software may be used. The main challenge here is to find the appropriate tool to migrate database in the required time frame without data loss or corruption. Here are the main features that should be supported:
- all modern versions and forks of source and destination database management systems are supported
- primary database entities such as table definitions, data, indexes and constraints are converted with all necessary attributes
- conversion settings are stored into a profile for next run of database migration
- option to customize names, types mapping, conversion rules, etc
- command line support in order to script and automate the database migration
- comprehensive tutorial and 24/7 support service
There are multiple software vendors offering solutions to automate database migration. One of these companies is Intelligent Converters working in database conversion field in years. They have developed comprehensive collection of tools for databases migration between all popular DBMS like PostgreSQL, MySQL, Oracle, SQL Server, Azure SQL, Microsoft Access, FoxPro and SQLite.
For more information about Intelligent Converters and their software please visit the official site https://www.convert-in.com/