Breadcrumb

Description

![logo](https://www.mysql.com/common/logos/logo-mysql-170x115.png) # What is MySQL Router? MySQL Router is part of InnoDB cluster, and is lightweight middleware that provides transparent routing between your application and back-end MySQL Servers. It can be used for a wide variety of use cases, such as providing high availability and scalability by effectively routing database traffic to appropriate back-end MySQL Servers. The pluggable architecture also enables developers to extend MySQL Router for custom use cases. # Supported Tags and Respective Dockerfile Links * MySQL Router 9.0, the Innovation release, for both x86 and AArch64(ARM64) architectures (tag: [`latest`, `9.0`](https://github.com/mysql/mysql-docker/blob/main/mysql-router/9.0/Dockerfile)) ([mysql-router/9.0/Dockerfile](https://github.com/mysql/mysql-docker/blob/main/mysql-router/9.0/Dockerfile)) * MySQL Router 8.4, the LTS release, for both x86 and AArch64(ARM64) architectures (tag: [`8.4`](https://github.com/mysql/mysql-docker/blob/main/mysql-router/8.4/Dockerfile)) ([mysql-router/8.4/Dockerfile](https://github.com/mysql/mysql-docker/blob/main/mysql-router/8.4/Dockerfile)) * MySQL Router 8.0, the latest GA bugfix release, for both x86 and AArch64(ARM64) architectures (tag: [`8.0`](https://github.com/mysql/mysql-docker/blob/main/mysql-router/8.0/Dockerfile)) ([mysql-router/8.0/Dockerfile](https://github.com/mysql/mysql-docker/blob/main/mysql-router/8.0/Dockerfile)) Images are updated when new MySQL Server maintenance releases and development milestones are published. Please note that non-GA releases are for preview purposes only and should not be used in production setups. # How to Use the MySQL Router Images The image currently uses the following mandatory variables: | Variable | Description | | ------------------------ | ------------------------------------------- | | MYSQL_HOST | MySQL host to connect to | | MYSQL_PORT | Port to use | | MYSQL_USER | User to connect with | | MYSQL_PASSWORD | Password to connect with | Running in a container requires a working InnoDB cluster. The image uses the following optional variables: | Variable | Description | | ------------------------ | ------------------------------------------- | | MYSQL_INNODB_CLUSTER_MEMBERS | Wait for at least this number of cluster instances to be ONLINE | | MYSQL_CREATE_ROUTER_USER | Whether to create a new account for the Router to use when it's running. Defaults to 1, set to 0 to disable. | | MYSQL_ROUTER_BOOTSTRAP_EXTRA_OPTIONS | Additional command line options applied while bootstrapping | If supplied the run script waits for the given mysql host to be up, the InnoDB cluster to have MYSQL_INNODB_CLUSTER_MEMBERS members and then uses the given server for its bootstrap mode [Bootstrapping](https://dev.mysql.com/doc/mysql-router/en/mysql-router-deploying-bootstrapping.html). The image can be run via: ``` docker run -e MYSQL_HOST=localhost -e MYSQL_PORT=3306 -e MYSQL_USER=mysql -e MYSQL_PASSWORD=mysql -e MYSQL_INNODB_CLUSTER_MEMBERS=3 -ti container-registry.oracle.com/mysql/community-router ``` It can be verified by typing: ``` docker ps ``` The following output should be displayed: ``` 4954b1c80be1 mysql-router:8.0 "/run.sh mysqlrouter" About a minute ago Up About a minute (healthy) 6447/tcp, 6448/tcp, 0.0.0.0:6446->6446/tcp, 6449/tcp innodbcluster_mysql-router_1 ``` # Exposed Ports The following TCP ports are exposed by the MySQL Router container: | Port | Description | ----- | --------------------------------------------------------------------------------------- | | 6446 | R/W connection port. Clients that connect to this port will be forwarded to the PRIMARY | | 6447 | R/O connection port. Clients that connect to this port will be forwarded to a SECONDARY | | 6448 | X Protocol R/W connection port. R/W port for X protocol client connections | | 6449 | X Protocol R/O connection port. R/O port for X protocol client connections | | 8443 | HTTPS REST interface port. | For more information about the REST interface API, see: https://dev.mysql.com/doc/mysql-router/en/mysql-router-rest-api-reference.html For full usage documentation, see: https://dev.mysql.com/doc/mysql-router/en/mysql-router-installation-docker.html

Short URL for Repo

https://container-registry.oracle.com/ords/ocr/ba/mysql/community-router

Open Source Terms and Restrictions

The container image you have selected and all of the software that it contains is licensed under one or more open source license that are provided in the container image. Your use of the container is subject to the terms of those licenses.

Pull Command for Latest

docker pull

Tags

TagOS/ArchitectureSizePull CommandLast UpdatedImage ID
8.0.40-aarch64linux/arm6483.46 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.40-aarch645 weeks ago463463614bcb
8.0-aarch64linux/arm6483.46 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0-aarch645 weeks ago463463614bcb
9.1.0-aarch64linux/arm6485.44 MBdocker pull container-registry.oracle.com/mysql/community-router:9.1.0-aarch645 weeks ago1de5e3182b62
9.1-aarch64linux/arm6485.44 MBdocker pull container-registry.oracle.com/mysql/community-router:9.1-aarch645 weeks ago1de5e3182b62
8.4.3-aarch64linux/arm6484.3 MBdocker pull container-registry.oracle.com/mysql/community-router:8.4.3-aarch645 weeks ago126063fec247
8.4-aarch64linux/arm6484.3 MBdocker pull container-registry.oracle.com/mysql/community-router:8.4-aarch645 weeks ago126063fec247
8.4.3linux/amd6486.03 MBdocker pull container-registry.oracle.com/mysql/community-router:8.4.35 weeks agofba017cb5642
8.4linux/amd6486.03 MBdocker pull container-registry.oracle.com/mysql/community-router:8.45 weeks agofba017cb5642
latestlinux/amd6487.3 MBdocker pull container-registry.oracle.com/mysql/community-router:latest5 weeks ago87e32c28128b
9.1.0linux/amd6487.3 MBdocker pull container-registry.oracle.com/mysql/community-router:9.1.05 weeks ago87e32c28128b
9.1linux/amd6487.3 MBdocker pull container-registry.oracle.com/mysql/community-router:9.15 weeks ago87e32c28128b
8.0.40linux/amd6485.29 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.405 weeks ago504fbc9fcf56
8.0linux/amd6485.29 MBdocker pull container-registry.oracle.com/mysql/community-router:8.05 weeks ago504fbc9fcf56
8.0.39-aarch64linux/arm6482.09 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.39-aarch644 months ago19429ed7760a
9.0.1-aarch64linux/arm6485.72 MBdocker pull container-registry.oracle.com/mysql/community-router:9.0.1-aarch644 months ago099815e02560