Requirements and compatibility

dbForge Schema Compare for MySQL requires the following:

  • .NET Framework 4.7.2 or higher installed. You can download .NET Framework here.

    Note

    .NET Framework is pre-installed in Microsoft Windows 7/8/8.1/10/11.

  • Microsoft Windows 7/8/8.1/10/11
  • Windows Server 2008/2012/2016/2019/2022
  • Linux
    • Ubuntu
    • Debian
    • Fedora
    • Red Hat Enterprise Linux (RHEL)
  • macOS
    • Monterey version 12.00
    • Big Sur version 11.00
    • Catalina version 10.15
    • Mojave version 10.14
    • High Sierra version 10.13

Note

CodeWeavers CrossOver must be pre-installed in order to work with Linux and macOS. You can download it at CodeWeavers.

To check a list of macOS and Linux versions that are compatible with CrossOver, see CrossOver system requirements.

Compatibility:

  • Support for MySQL versions 5.5-8.3
  • Support for MariaDB versions 5.5-11.4
  • Support for Percona versions 5.5-8.1
  • Secure connections via SSL/SSH
  • Working with MySQL on Amazon RDS and on Amazon Aurora
  • Azure MySQL
  • Google Cloud Platform
  • Alibaba Cloud
  • Tencent Cloud
  • Galera Cluster
  • Sphinx Search Engine
  • Oracle MySQL Database Service
  • Work with MySQL embedded server
  • HTTP connections via PHP tunnel
  • Support for UTF-8 databases
  • Direct access to MySQL server without client libraries
  • Support for Windows authentication when creating connection to MySQL server
  • MySQL pluggable authentication and Windows authentication on connecting to MySQL server (PAM)
  • Percona PAM Authentication for MySQL

Permissions required to use Schema Compare

dbForge Schema Compare can compare and synchronize schemas of a SQL Server database. To perform this effectively, the user needs access to the schema and the data objects of a database, and may require additional privileges depending on the options of data synchronization.

MySQL 5.5 - 8.3.0 and MariaDB 5.5-11.3

Task Permissions
Comparing data GRANT SELECT, SHOW VIEW ON database_name.* TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.user TO ‘user_name’@’%’
GRANT SELECT ON TABLE mysql.db TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.tables_priv TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.columns_priv TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.procs_priv TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.proxies_priv TO ‘user_name’@’%’;

If you do not need privileges on database objects, then you should enable Ignore permissions and have only the GRANT SELECT, SHOW VIEW ON `autotest_db_describe`.* TO 'user_name'@'%' permission.

MySQL 5.5-11.3

Task Permissions
Comparing data GRANT SELECT ON TABLE mysql.role_edges TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.global_grants TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.default_roles TO ‘user_name’@’%’;

MariaDB 10.0-11.3

Task Permissions
Comparing data GRANT SELECT ON TABLE mysql.roles_mapping TO ‘user_name’@’%’;
GRANT SELECT ON TABLE mysql.global_priv TO ‘user_name’@’%’;