При использовании PowerBI мы постоянно устанавливаем соединения с MySQL. Как в локальной сети, так и с внешними серверами.
НО!
Что делать, если база, находящаяся на внешнем ресурсе, закрыта для подключения из вне.
В таком случае мы обычно строим SSH тоннель. Но тут есть не самый приятный момент. PowerBI, на момент написания статьи, не умеет строить SSH тоннели самостоятельно. В отличии от HeidiSQL и подобных программ, где такая возможность есть.
Но не беда, если вам необходимо использовать именно PowerBI и подключаться к закрытой внешней базе данных, то мы можем воспользоваться Putty, который поможет нам построить нужный SSH тоннель. Который, в дальнейшем, будет использовать Повер Би.
1) Качаем и устанавливаем Putty (если его у вас ещё нет)
С помощью него, мы сможем установить SSH соединение и перенаправить порты.
Так что открываем приложение и настраиваем SSH подключение.
ВАЖНО! В Host Name прописываем IP SSH сервера, в не IP от БД. Порт так же указываем, необходимый для SSH подключения.
В Saved Sessions можно задать название данного соединения и сохранить, кликнув по кнопке Save
Далее, в левом меню открываем раздел Connection - SSH - Tunnels
Проставляем 2 верхние галочки. Заполняем Source port, это порт на котором находится БД, по умолчанию 3306. Так же заполняем Destination.
Destination - это IP где находится база, обычно это 127.0.0.1 (localhost), но вам лучше уточнить этот момент, потому что иногда базу разворачивают на другой VM и IP может быть другой. Как правило IP для подключения к БД, можно узнать в настройках проекта.
Как поля будут заполнены, кликаем по кнопке Add и открываем соединение кнопкой Open. Как соединение будут открыто, вам необходимо авторизоваться на сервере, используя свои логин и пароль от ssh.
2) Далее делаем настройки в PowerBI. Я приведу пример из программы HeidiSQL (без SSH тоннеля и по сути настройки везде одинаковые)
Как видно на скриншоте, я не создавал SSH тоннель внутри программы, а просто прописал доступы к базе. Доступы к базе относительно сервера SSH. Т.е. те доступы, по которым SSH сервер подключался бы к БД. По сути это то, что мы прописывали в Putty в разделе Tonnels.
По сути всё. SSH соединение создано и порты перенаправлены. Теперь можно спокойно использовать Power BI