我安装了这个程序,如这里所描述的,https://dev.mysql.com/doc/mysql-router/8.0/en/mysql-router-deploying-bootstrapping.html。
安装后,在系统中启动了服务mysqlrouter。但是,此服务不侦听配置文件“/etc/mysql路由器/mysqlrouter.conf”中指定的任何端口。
命令lsof -i -P -n | grep LISTEN显示:
systemd-r 780 systemd-resolve 13u IPv4 17461 0t0 TCP 127.0.0.53:53 (LISTEN)
sshd 1140 root 3u IPv4 20873 0t0 TCP *:22 (LISTEN)
sshd 1140 root 4u IPv6 20890 0t0 TCP *:22 (LISTEN) 如您所见,只有端口22在监听。
要让make路由器侦听配置文件中定义的端口,我必须使用命令mysqlrouter -c /etc/mysqlrouter/mysqlrouter.conf &作为一个新进程启动它。
在那之后,After路由器监听端口,一切就都好了。
看起来,服务在启动时不加载配置文件/etc/mysqlrouter/mysqlrouter.conf,并且使用默认(空)配置,它不监听任何内容。
配置文件内容:
[routing:default]
bind_address=0.0.0.0
bind_port=3306
destinations=metadata-cache://personal/default?role=PRIMARY
routing_strategy=first-available
protocol=classic如何使mysqlrouter根据配置文件开始工作,并侦听指定的端口?
如果我使用命令mysqlrouter -c /etc/mysqlrouter/mysqlrouter.conf &将works路由器作为一个新进程启动,它将正常工作:
systemd-r 780 systemd-resolve 13u IPv4 17461 0t0 TCP 127.0.0.53:53 (LISTEN)
sshd 1140 root 3u IPv4 20873 0t0 TCP *:22 (LISTEN)
sshd 1140 root 4u IPv6 20890 0t0 TCP *:22 (LISTEN)
main 3615 root 4u IPv4 43469 0t0 TCP *:3306 (LISTEN)更新.
命令systemctl status mysqlrouter.service显示:
● mysqlrouter.service - LSB: Start / Stop MySQL Router
Loaded: loaded (/etc/init.d/mysqlrouter; generated)
Active: active (exited) since Sun 2019-06-30 16:49:14 UTC; 2min 48s ago
Docs: man:systemd-sysv-generator(8)
Process: 4089 ExecStop=/etc/init.d/mysqlrouter stop (code=exited, status=0/SUCCESS)
Process: 4117 ExecStart=/etc/init.d/mysqlrouter start (code=exited, status=0/SUCCESS)
Jun 30 16:49:14 webservicepersonal2o systemd[1]: Starting LSB: Start / Stop MySQL Router...
Jun 30 16:49:14 webservicepersonal2o mysqlrouter[4117]: * Starting MySQL Router
Jun 30 16:49:14 webservicepersonal2o mysqlrouter[4117]: ...done.
Jun 30 16:49:14 webservicepersonal2o systemd[1]: Started LSB: Start / Stop MySQL Router.正如我所说的,服务可以工作,但它仍然不监听端口。
systemd-r 780 systemd-resolve 13u IPv4 17461 0t0 TCP 127.0.0.53:53 (LISTEN)
sshd 1140 root 3u IPv4 20873 0t0 TCP *:22 (LISTEN)
sshd 1140 root 4u IPv6 20890 0t0 TCP *:22 (LISTEN)发布于 2020-03-31 14:05:35
请使用下面的选项。
bind_address=127.0.0.1我得到了以下信息:
netstat -ntlp
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 6117/mysqlrouter使用dbhost: 127.0.0.1
发布于 2020-09-22 05:41:54
使用此命令是正常的。
试试这个:
sudo mysqlrouter --user=mysqlrouter --bootstrap root@192.168.30.241:3306 --conf-use-sockets --report-host localhost --forcehttps://stackoverflow.com/questions/56824532
复制相似问题