Sua explicação é um pouco estranha e seu exemplo ainda deve funcionar porque o que você está dizendo é: "quando o tráfego na minha máquina local é direcionado para a porta TCP 1234, envie-o através deste túnel e faça a máquina no outra extremidade envia-a para qualquer endereço IP resolve para localhost na máquina remota e a envia para a porta 3306 da THA machine. Se você tivesse colocado: remote2.example.com: então a máquina 're sshing to iria enviar os pacotes para qualquer remote2.example.com resolvido para. Por exemplo, imagine eu tenho três shells e eu tenho uma máquina local e uma máquina remota:
[@local 1]$ ssh -L8888:localhost:7777 remote
[@remote 2]$ nc -l -s 127.0.0.1 -p 7777
[@local 3]$ echo 'Hello World!' | nc localhost 8888
Tornará a saída do shell @local 1
"Hello World!". Talvez o serviço remoto não esteja realmente escutando em qualquer localhost na máquina remota resolve?