Не удается сделать удаленное соединение с PyMySQL (неправильный номер pymysql.err.InternalError: Номер пакета)

обновление: Проблема решена, решение опубликовано ниже

Я новичок в процессе создания удаленных подключений к базе данных, но кажется, что это не является очевидным решением для этой ошибки.

pymysql.err.InternalError: Packet sequence number wrong - got 80 expected 0 возникает при попытке сделать следующее соединение pymysql

Я запускаю MacOS 10.12.5, Python 2.7.10 в PyCharm (также пытался с Terminal) и PyMySQL 0.7.11 (также пробовал 0.7.9)

update: также пытался использовать Windows 10, Python 2.7.13 с тем же результатом

База данных размещена на cPanel. Возможно, есть дополнительные настройки для изменения, прежде чем я смогу подключиться. Соединительный пользователь имеет полные привилегии. Мой IP был добавлен в список доступа к хосту.

другие примечания: Как и следовало ожидать, если номер порта или хост-адрес случайно изменен, он немедленно отказывается от соединения. В противном случае требуется около 30 секунд до появления ошибки "пакетной последовательности".

import pymysql.cursors
import pymysql

connection = pymysql.connect(host = hostIPaddress,
                             port = 2083,
                             user = username,
                             passwd = password,
                             db = dbName,
                             charset = 'utf8mb4', # also tried 'utf8'
                             cursorclass=pymysql.cursors.DictCursor)

Ответ 1

Пока порт 2083 используется хостом, каждая база данных использует порт 3306 по умолчанию в этом случае.

При тестировании с помощью 3306 доступ был отклонен до тех пор, пока я не добавил отклоненный IP-адрес в список "доступ" хоста в Remote MySQL на cPanel.