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 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)) * MySQL Router 8.4, the LTS release, for both x86 and AArch64(ARM64) architectures (tag: [`latest`, `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)) 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
latestlinux/amd6484.37 MBdocker pull container-registry.oracle.com/mysql/community-router:latest4 weeks ago4fd6de627916
8.4.0-aarch64linux/arm6482.7 MBdocker pull container-registry.oracle.com/mysql/community-router:8.4.0-aarch644 weeks ago163aea132b18
8.4.0linux/amd6484.37 MBdocker pull container-registry.oracle.com/mysql/community-router:8.4.04 weeks ago4fd6de627916
8.4-aarch64linux/arm6482.7 MBdocker pull container-registry.oracle.com/mysql/community-router:8.4-aarch644 weeks ago163aea132b18
8.4linux/amd6484.37 MBdocker pull container-registry.oracle.com/mysql/community-router:8.44 weeks ago4fd6de627916
8.0.37-aarch64linux/arm6482.11 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.37-aarch644 weeks ago9bdc9c257ca0
8.0-aarch64linux/arm6482.11 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0-aarch644 weeks ago9bdc9c257ca0
8.0.37linux/amd6483.91 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.374 weeks ago4be4ebf70bd7
8.0linux/amd6483.91 MBdocker pull container-registry.oracle.com/mysql/community-router:8.04 weeks ago4be4ebf70bd7
8.0.36-aarch64linux/arm6491.16 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.36-aarch644 months ago7dc399607bf5
8.3.0-aarch64linux/arm6495.49 MBdocker pull container-registry.oracle.com/mysql/community-router:8.3.0-aarch644 months agoc78bc64d118a
8.3-aarch64linux/arm6495.49 MBdocker pull container-registry.oracle.com/mysql/community-router:8.3-aarch644 months agoc78bc64d118a
8.0.36linux/amd6492.81 MBdocker pull container-registry.oracle.com/mysql/community-router:8.0.364 months agobf71bd170ed0
8.3.0linux/amd6497.2 MBdocker pull container-registry.oracle.com/mysql/community-router:8.3.04 months ago780f4339b71e
8.3linux/amd6497.2 MBdocker pull container-registry.oracle.com/mysql/community-router:8.34 months ago780f4339b71e