Disaster Recovery 101: Architecting Auto-Failovers for MySQL and PHP Deployments on OVH
Establishing a High-Availability MySQL Cluster with Replication and Orchestration
Achieving true disaster recovery for a MySQL deployment hinges on a robust, automated failover strategy. This isn’t about manual intervention; it’s about designing a system that detects failures and seamlessly transitions operations to a healthy replica. We’ll focus on a primary-replica setup with synchronous or semi-synchronous replication, augmented by an orchestration layer to manage failover.
Our chosen architecture involves a primary MySQL instance and at least one replica. For OVH deployments, leveraging their dedicated servers or managed database services (like Managed Databases for MySQL) simplifies infrastructure management. For this guide, we’ll assume a self-managed setup on OVH dedicated servers, giving us granular control.
MySQL Replication Configuration
The foundation is binary log (binlog) replication. Ensure binlogs are enabled and configured correctly on the primary. The `server-id` must be unique across all nodes in the replication topology.
Primary MySQL Configuration (my.cnf or my.ini)
[mysqld] server-id = 1 log_bin = /var/log/mysql/mysql-bin.log binlog_format = ROW expire_logs_days = 7 relay_log = /var/log/mysql/mysql-relay-bin.log read_only = OFF innodb_flush_log_at_trx_commit = 1 sync_binlog = 1
On the replica(s), configure `server-id` to be unique and set `read_only = ON` to prevent accidental writes. `relay_log` is essential for the replica to store logs from the primary.
Replica MySQL Configuration (my.cnf or my.ini)
[mysqld] server-id = 2 log_bin = /var/log/mysql/mysql-bin.log binlog_format = ROW expire_logs_days = 7 relay_log = /var/log/mysql/mysql-relay-bin.log read_only = ON innodb_flush_log_at_trx_commit = 1 sync_binlog = 1
After configuring and restarting MySQL on both primary and replica, create a dedicated replication user on the primary and grant it the necessary privileges. Then, configure the replica to connect to the primary.
Replication User and Connection Setup
-- On Primary MySQL Server CREATE USER 'repl_user'@'%' IDENTIFIED BY 'your_strong_password'; GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%'; FLUSH PRIVILEGES; -- Get primary's current binary log file and position SHOW MASTER STATUS; -- Note down File and Position (e.g., File: mysql-bin.000001, Position: 123456)
-- On Replica MySQL Server CHANGE MASTER TO MASTER_HOST='primary_ip_address', MASTER_USER='repl_user', MASTER_PASSWORD='your_strong_password', MASTER_LOG_FILE='mysql-bin.000001', -- From SHOW MASTER STATUS on primary MASTER_LOG_POS=123456; -- From SHOW MASTER STATUS on primary START SLAVE; SHOW SLAVE STATUS\G; -- Verify 'Slave_IO_Running: Yes' and 'Slave_SQL_Running: Yes'
For higher durability, consider `sync_binlog = 1` and `innodb_flush_log_at_trx_commit = 1` on the primary. This ensures transactions are committed to disk before acknowledging the client, but it impacts write performance. For semi-synchronous replication, plugins like Percona’s `rpl_semi_sync_master` and `rpl_semi_sync_slave` can be employed.
Orchestrating Automated Failover with Orchestrator
Manual failover is error-prone and slow. We need an automated solution. Orchestrator is a popular, robust tool for MySQL high availability and disaster recovery. It monitors replication health, detects failures, and orchestrates failover operations.
Orchestrator operates by querying MySQL instances for their replication status and topology. When it detects a primary failure (e.g., it becomes unreachable or its replication threads stop), it promotes a healthy replica to become the new primary.
Orchestrator Installation and Configuration
Install Orchestrator on a separate host (or multiple hosts for Orchestrator’s own HA). This host should have network access to all your MySQL instances.
Orchestrator Configuration File (orchestrator.conf.json)
{
"Debug": false,
"ListenAddress": ":3000",
"MySQLTopologyUser": "orchestrator_user",
"MySQLTopologyPassword": "your_orchestrator_db_password",
"MySQLOrchestratorHostPort": "127.0.0.1:3306",
"MySQLOrchestratorDatabase": "orchestrator",
"DiscoveryPeriodSeconds": 10,
"FailureDetectionPeriodSeconds": 5,
"PromotionLagSeconds": 30,
"DetectClusterTopologyOrder": ["MySQLPrimary", "MySQLReplica"],
"PostMasterPromotionProcesses": [
"/path/to/scripts/post_promotion.sh"
],
"PostUnsuccessfulFailoverProcesses": [
"/path/to/scripts/unsuccessful_failover.sh"
],
"SlaveLagQuery": "SELECT * FROM mysql.slave_master_info",
"ReplicaTrackingPeriodSeconds": 60,
"AutoDiscoverAtStartup": true,
"AutoOrchestrateOnStartup": true,
"InstancePollSeconds": 10,
"MaxgreSQLConnections": 100,
"MaxMySQLConnections": 100,
"MaxSQLServerConnections": 100,
"MaxOracleConnections": 100,
"MaxMongoDBConnections": 100,
"MaxRedisConnections": 100,
"MaxCassandraConnections": 100,
"MaxElasticsearchConnections": 100,
"MaxKafkaConnections": 100,
"MaxRabbitMQConnections": 100,
"MaxPostgresConnections": 100,
"MaxMariaDBConnections": 100,
"MaxDB2Connections": 100,
"MaxCouchbaseConnections": 100,
"MaxNeo4jConnections": 100,
"MaxDynamoDBConnections": 100,
"MaxMemcachedConnections": 100,
"MaxAerospikeConnections": 100,
"MaxInfluxDBConnections": 100,
"MaxTimescaleDBConnections": 100,
"MaxClickHouseConnections": 100,
"MaxCockroachDBConnections": 100,
"MaxYugabyteDBConnections": 100,
"MaxTiDBConnections": 100,
"MaxGreenplumConnections": 100,
"MaxVerticaConnections": 100,
"MaxTeradataConnections": 100,
"MaxSAPHANAConnections": 100,
"MaxDB2LUWConnections": 100,
"MaxDB2AS400Connections": 100,
"MaxDB2iConnections": 100,
"MaxDB2zOSConnections": 100,
"MaxDB2LinuxConnections": 100,
"MaxDB2UnixConnections": 100,
"MaxDB2WindowsConnections": 100,
"MaxDB2AIXConnections": 100,
"MaxDB2SolarisConnections": 100,
"MaxDB2HPUXConnections": 100,
"MaxDB2LinuxonIBMZConnections": 100,
"MaxDB2LinuxonPowerConnections": 100,
"MaxDB2LinuxonIntelConnections": 100,
"MaxDB2LinuxonAMDConnections": 100,
"MaxDB2LinuxonARMConnections": 100,
"MaxDB2LinuxonRISCVConnections": 100,
"MaxDB2LinuxonPowerPCConnections": 100,
"MaxDB2LinuxonIBMZConnections": 100,
"MaxDB2LinuxonPowerPC64Connections": 100,
"MaxDB2LinuxonPowerPC64LEConnections": 100,
"MaxDB2LinuxonPowerPC64BEConnections": 100,
"MaxDB2LinuxonPowerPC64LEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections": 100,
"MaxDB2LinuxonPowerPC64BELEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEBEConnections":