Hi again.
I never mentioned that I use a VPN because the VPN is NOT part of the problem, I have also tried to disable VPN (and disabled the VPN auto connect) and the behavior is the same, anyway see the new logs with VPN disabled:
journalctl -a | pastebinit -> DNCB
cat $HOME/.kodi/temp/kodi.log | pastebinit -> gBgJ
Yes, VPN is working but thanks to a my workaround (shell script that fix the default route after the error "ERROR: Linux route add command failed: external program exited with error status: 2").
The "linux route add 0.0.0.0/0 via GATEWAY_IP" problem is still here (also on LibreELEC v7.90.008) as you was able to see in my LibreELEC log.
See here a my old post about that problem: OpenELEC Mediacenter - OpenELEC Forum - VPN Manager for OpenVPN (38/63)
My FIX: OpenELEC Mediacenter - OpenELEC Forum - VPN Manager for OpenVPN (38/63)
About VPN, I think the "route add 0.0.0.0/0 via GATEWAY_IP" problem that you say is solved is still there (also on LibreELEC v7.90.008) on connmand or busybox.
Also because I cannot understand why connmand go to ADD the default route (route 0.0.0.0 gw 192.168.147.1) just after have deleted it...., see the bold lines:
Nov 18 17:46:23 LibreELEC openvpn[278]: /sbin/ip addr add dev tun0 10.3.200.14/24 broadcast 10.3.200.255
Nov 18 17:46:23 LibreELEC connmand[318]: tun0 {add} address 10.3.200.14/24 label tun0 family 2
Nov 18 17:46:23 LibreELEC connmand[318]: tun0 {add} route 10.3.200.0 gw 0.0.0.0 scope 253 <LINK>
Nov 18 17:46:23 LibreELEC connmand[318]: eth0 {add} route 159.122.133.197 gw 192.168.147.1 scope 0 <UNIVERSE>
Nov 18 17:46:23 LibreELEC connmand[318]: eth0 {del} route 0.0.0.0 gw 192.168.147.1 scope 0 <UNIVERSE>
Nov 18 17:46:23 LibreELEC connmand[318]: eth0 {add} route 0.0.0.0 gw 192.168.147.1 scope 0 <UNIVERSE>
Nov 18 17:46:23 LibreELEC openvpn[278]: ERROR: Linux route add command failed: external program exited with error status: 2
Nov 18 17:46:23 LibreELEC connmand[318]: eth0 {del} route 8.8.8.8 gw 192.168.147.1 scope 0 <UNIVERSE>
Nov 18 17:46:23 LibreELEC connmand[318]: eth0 {del} route 8.8.4.4 gw 192.168.147.1 scope 0 <UNIVERSE>
Nov 18 17:46:23 LibreELEC connmand[318]: eth0 {del} route 192.168.147.1 gw 0.0.0.0 scope 253 <LINK>
Nov 18 17:46:23 LibreELEC connmand[318]: tun0 {add} route 0.0.0.0 gw 10.3.200.254 scope 0 <UNIVERSE>
The last line (route 0.0.0.0 gw 10.3.200.254) that is the new default gateway should be executed just after the first delete (route 0.0.0.0 gw 192.168.147.1).
Anyway this route add/del problem is another problem that if you want we can talk on another thread.
About the main problem (MySQL) I think the problem is that some Kodi stuff still starting before the network goes UP.
Focus your attention to the time in the log files.
The time starts at "18:52:40" but this is not the correct time (I started LibreELEC at about 21:54), this should be the time inside the LibreELEC release (Odroid C2 does not have a RTC).
Well.. going on: LibreELEC starts to log MySQL error at "18:52:42".
Kodi.sh starts at 18:52:44 (Oct 20 18:52:44 LibreELEC kodi.sh[420]: hwclock: ioctl 0x4024700a failed: Input/output error)
Why kodi.sh start after the MySQL connections?
Going on, connmand will go to DELETE the network interface:
Oct 20 18:52:42 LibreELEC connmand[314]: eth0 {del} route 0.0.0.0 gw 192.168.147.1 scope 0 <UNIVERSE>
Oct 20 18:52:42 LibreELEC connmand[314]: eth0 {del} route 8.8.8.8 gw 192.168.147.1 scope 0 <UNIVERSE>
Oct 20 18:52:42 LibreELEC connmand[314]: eth0 {del} route 8.8.4.4 gw 192.168.147.1 scope 0 <UNIVERSE>
Oct 20 18:52:42 LibreELEC connmand[314]: eth0 {del} route 192.168.147.1 gw 0.0.0.0 scope 253 <LINK>
Oct 20 18:52:42 LibreELEC connmand[314]: eth0 {del} address 192.168.147.27/24 label eth0
Oct 20 18:52:42 LibreELEC connmand[314]: eth0 {del} route 192.168.147.0 gw 0.0.0.0 scope 253 <LINK>
And going on: the "Link is Up - 1000/Full" is 2 seconds later (at 18:52:44) these "eth0 del".
Still going on, we have finally the eth0 add:
Oct 20 18:52:44 LibreELEC kernel: IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Oct 20 18:52:44 LibreELEC connmand[314]: ipconfig state 3 ipconfig method 1
Oct 20 18:52:44 LibreELEC connmand[314]: eth0 {add} address 192.168.147.27/24 label eth0 family 2
Oct 20 18:52:44 LibreELEC connmand[314]: eth0 {add} route 192.168.147.0 gw 0.0.0.0 scope 253 <LINK>
Oct 20 18:52:44 LibreELEC connmand[314]: eth0 {add} route 192.168.147.1 gw 0.0.0.0 scope 253 <LINK>
Oct 20 18:52:44 LibreELEC connmand[314]: eth0 {add} route 8.8.8.8 gw 192.168.147.1 scope 0 <UNIVERSE>
Oct 20 18:52:44 LibreELEC connmand[314]: eth0 {add} route 8.8.4.4 gw 192.168.147.1 scope 0 <UNIVERSE>
Oct 20 18:52:44 LibreELEC connmand[314]: eth0 {add} route 0.0.0.0 gw 192.168.147.1 scope 0 <UNIVERSE>
and just later the NTP update:
Oct 20 18:52:44 LibreELEC connmand[314]: ntp: time slew +2520110.999889 s
Nov 18 21:54:35 LibreELEC systemd[1]: Time has been changed
How is it possible that LibreELEC strats the MySQL connection before the network interface goes UP?
Why connmand will go to "eth0 del" before "eth0 add"?
If this "eth0 del" before the "eth0 add" is correct, I expect that all Kodi stuff will starts just after these "eth0 add".....