MySQL configuration changes performed by ClusterControl will be loaded into runtime automatically (for all supported variables) as well as written into MySQL configuration files for persistence.
Since ClusterControl requires passwordless SSH configuration at the beginning of importing/deploying the cluster, configuration management requires no remote setup like Workbench and it works out-of-the-box after the hosts are managed by ClusterControl. It also understands database load balancer configuration format for HAProxy, MariaDB MaxScale, ProxySQL and Keepalived. It supports multiple MySQL vendors like MariaDB, Percona as well as all Galera Cluster variants. For ClusterControl, since it understands cluster and topology, it’s the best configuration manager to manage multiple database nodes at once. Workbench v ClusterControl: Advantages and DisadvantagesĮvery product has its own set of advantages and disadvantages. This provides more visibility on the configuration difference among hosts in a particular database cluster. Notice a line highlighted in red in the screenshot above? That means the configuration is not identical in all nodes.
Go to Performance -> DB Variables to check the runtime configuration for all servers in the cluster: If two files having identical names exist on both directories, the one located under /etc/cmon/templates will be used. When ClusterControl loads up the template file for deployment, files under /etc/cmon/templates will always have higher priority over the files under /usr/share/cmon/templates. To make sure your custom configuration template files persist across upgrades, store your template files under /etc/cmon/templates directory. You can directly modify the file to suit your deployment policy however, this directory will be replaced after a package upgrade. Some variables might require a follow-up step like server restart or configuration reload, which will then be advised by ClusterControl.Īll services configured by ClusterControl use a base configuration template available under /usr/share/cmon/templates on the ClusterControl node. The parameter will be applied to the chosen database nodes’ runtime and into the configuration file if the option passes the variable validation process. You can add a new parameter into the configuration file or modify an existing parameter. To see all the loaded system status and variables, go to Management -> Status and System Variables: This will take a hit on your database uptime. One has to perform restart operation on the MySQL server to load the new configuration changes by going to Instance -> Startup/Shutdown. Note that clicking on the “Apply” button will not push the corresponding change into MySQL runtime. Once applied, you should see the configuration is applied to the MySQL server where a new line will appear (if it didn’t exist) in the MySQL configuration file. Once you are satisfied with the changes, and before clicking “Apply”, make sure you choose the correct MySQL group section from the dropdown menu (right next to the Discard button). Configurations are categorized to a number of sections – General, logging, InnoDB, networking and so on – which really helps us focus on specific features that we want to tweak or enable. You will be presented with a step-by-step configuration wizard to help you to set up remote management for the connection profile:Īll existing configuration variables from the configuration file are pre-loaded into this configuration manager so you can see what options have been enabled with its respective values. From MySQL Workbench, select an existing connection profile and choose Configure Remote Management. However, there are some initial steps required to enable this feature. You can use MySQL Workbench to perform MySQL/ MariaDB configuration management on a remote MySQL server. It is freely available and commonly being used by SysAdmins, DBAs and developers to perform SQL development, data modelling, MySQL server administration and data migration. MySQL Workbench is a graphical client for working with MySQL servers and databases for server versions 5.x and higher. In this blog post, we are going to look at ClusterControl Configuration Management as an alternative to MySQL Workbench configuration management. Applying the same configuration changes into MySQL configuration file is also necessary to make the changes persistent across MySQL restarts, otherwise the default values will get loaded during the startup. Applying configuration changes on the runtime environment can be done through MySQL server clients with no privilege for session variables but SUPER privileges for global variables. MySQL configuration management consists of two major components – MySQL configuration files and runtime configuration.