Поскольку у вас уже есть работающая база данных, ваш порт 3306
используется в этом, поэтому не сможет связываться.
Решение: привяжите его к другому порту и попытайтесь подключиться к нему.
Вы можете привязать к другому адресу, используя local_bind_address=('0.0.0.0', 1234)
(это будет ваш целевой локальный адрес / порт, к которому он будет привязан) в ваших аргументах SSHTunnelForwarder
.
Итак, ваше соединениеTunnelForwarder должен выглядеть примерно так:
server = SSHTunnelForwarder(
('172.17.9.125', 22),
ssh_password="123456",
ssh_username="root",
local_bind_address=('0.0.0.0', 1234),
remote_bind_address=('127.0.0.1', 3306))
И теперь будет установлено соединение с port 1234
database = pymysql.connect(host='127.0.0.1',
port=1234,
user='root',
passwd='root')
db = pymysql.connect(host='127.0.0.1', port=1234, user='root', passwd='root', db='TestDB')