5.2 使用端口转发连接

可以选择使用端口转发,从你的本地机器创建重定向,以便轻松使用 MySQL 客户端,例如 MySQL Workbench。我们将使用端口 3306 连接到端口 6446 上的主服务器的读写连接。

$> kubectl port-forward service/mycluster 3306

Forwarding from 127.0.0.1:3306 -> 6446
Forwarding from [::1]:3306 -> 6446

要测试,请使用 MySQL 命令行或 MySQL Shell,使用 InnoDB 集群用户的凭据打开第二个终端。

$> mysql -h127.0.0.1 -uroot -p

演示连接到本地 MySQL 实例。

mysql> select @@hostname;
+-------------+
| @@hostname  |
+-------------+
| mycluster-0 |
+-------------+

在本示例中,未看到端口转发到 127.0.0.1:3306,意味着本地 MySQL 安装可能已安装并在系统上处于活动状态。

使用端口名称代替端口号也能正常工作。

$> kubectl port-forward service/mycluster mysql
Forwarding from 127.0.0.1:3306 -> 6446
Forwarding from [::1]:3306 -> 6446
^C

$> kubectl port-forward service/mycluster mysql-ro
Forwarding from 127.0.0.1:6447 -> 6447
Forwarding from [::1]:6447 -> 6447

包含关联端口的端口名称列表。

mysql:            3306
mysqlx:           33060
mysql-alternate:  6446
mysqlx-alternate: 6448
mysql-ro:         6447
mysqlx-ro:        6449
router-rest:      8443

有关 MySQL 服务使用的所有端口的列表,请参见 MySQL 端口参考。此处使用的端口来自 MySQL 路由器。