MySQL Router 8.0
This section summarizes many of the new features added to MySQL Router 8.0, in relation to MySQL Router 2.1.
MySQL Router 8.0.3 is the first 8.0.x release to use the new numbering, and is the successor to MySQL Router 2.1.4.
This guide is not updated with every MySQL Router 8.0 release; see the MySQL Router 8.0 release notes for updated information.
MySQL Connectors and other MySQL client tools and applications now synchronize the first digit of their version number with the (highest) MySQL server version they support. This change makes it easy and intuitive to decide which client version to use for which server version. Similarly, MySQL Router now uses the same version number as MySQL Server.
        The optional
        routing_strategy
        configuration option was added. The available values are
        first-available,
        next-available,
        round-robin, and
        round-robin-with-fallback.
      
        Previously, these strategies were described as scheduling modes
        by the mode configuration option where the
        read-write mode defaults to the first-available strategy, and
        the read-only mode defaults to the round-robin strategy. This
        preserves previous behavior for these modes.
      
        The --ssl-key and
        --ssl-cert optional
        bootstrap command-line options were added. They directly use
        their MySQL client's counterparts, and specify the client-side
        certificate and private key to facilitate client-side
        authentication. This is useful when the root account used during
        bootstrap was created with REQUIRE X509, which requires the
        client to authenticate itself when logging in.
      
        The new
        connect_timeout
        and
        read_timeout
        metadata configuration file options were added. These are
        defined under the [DEFAULT] namespace and affect internal
        operations, such as metadata server connections.
      
Bootstrap now accepts any member of an InnoDB cluster and automatically finds and reconnects to a writable primary. Before, only the primary was accepted.
        Bootstrap now accepts the
        --config option and reads
        the [logger] level
        option's definition.
      
The maximum number of concurrent client connections was increased from about 500 to over 5000, a limit now dependent on the operating system. To achieve this, select()-based fd event calls were replaced by poll() (or WSAPoll() on Windows).
        MySQL Router 8.0.22 increased this limit to about 50,000; see the
        [IO]
        backend
        and
        threads
        configuration options for details.
      
A new mysqlrouter_plugin_info utility was added to help debug MySQL Router plugins. It provides information such as the plugin version, description, ABI version, requirements, and function pointers.
For complete list of all changes introduced in MySQL Router 8.0, see the MySQL Router 8.0 Release Notes