Инструкция обновлена 23 октября 2025 г.
Подключение к удаленной базе данных MySQL позволяет работать с ее содержимым аналогично локальным БД. Такой подход позволяет редактировать или считывать информацию через интернет с любого компьютера независимо от расположения пользователя.
В этом материале мы рассмотрим, как подключиться к MySQL несколькими способами. В качестве тестовой базы можно использовать облачные базы данных провайдера Timeweb Cloud. Запуск БД там займет пару минут.
Способы подключения к базе данных
Существует несколько вариантов коннекта; какой именно выбрать, решать вам:
-
Командная строка. Входит в комплект сервера MySQL. Начиная с версии 8.4 Oracle рекомендует использовать MySQL Shell (
mysqlsh) вместо обычного клиента mysql. -
Графические инструменты. Это наиболее удобный вариант для большинства пользователей:
-
DBeaver: Популярный кросс-платформенный универсальный клиент.
-
MySQL Workbench: Официальный инструмент от Oracle. (Важно: при использовании MySQL 8.4 и новее проверяйте совместимость, так как поддержка может быть неполной.)
-
phpMyAdmin: Веб-интерфейс, часто используемый на хостингах.
Во всех перечисленных способах возможно подключение по защищенному каналу используя SSL/TLS-сертификаты. В MySQL 8.0+ SSL/TLS-шифрование включено по умолчанию, но если по каким-то причинам оно выключено, то установить зашифрованное соединение не удастся.
Как выяснить адрес сервера MySQL
Если вы используете облачную базу данных, найти нужный IP-адрес, порт и реквизиты можно в панели управления аккаунтом в разделе «Базы данных».

Вы можете сразу выбрать способ (командная строка, PHP, Python и др.) и тип подключения (IP-адрес или домен), и система автоматически покажет готовый к использованию код с вашими реквизитами.

Если база данных размещена на сервере (то есть речь идет не об облачной базе), то нужный IP — это IP-адрес вашего сервера. Найти его можно на странице нужного сервера, на вкладке «Дашборд».
Подключение к базе данных
После того как мы узнали адрес и реквизиты, можно подключиться к базе. Для всех последующих примеров мы будем использовать следующие условные данные:
- IP-адрес сервера:
90.156.208.110 - Порт:
3306(стандартный для MySQL) - Имя пользователя:
gen_user - Пароль:
superpassword - Имя базы данных:
default_db
Командная строка — логин и пароль
Рассмотрим, как подключиться к базе данных MySQL из разных операционных систем, используя командную строку и логин с паролем в качестве реквизитов. Мы рекомендуем использовать обязательное SSL-соединение (--ssl-mode=REQUIRED) для защиты передаваемых данных (если сервер настроен с поддержкой шифрования).
mysql --host=90.156.208.110 \
--port=3306 \
--user=gen_user \
--password \
--database=default_db \
--ssl-mode=REQUIRED
После ввода команды MySQL-сервер запросит пароль.
MySQL Shell
Для MySQL Shell (mysqlsh) команда подключения в классическом режиме будет аналогичной. Вы также можете использовать флаг --uri — стандартный формат подключения, который также применяется в языках программирования и утилитах:
mysqlsh --uri gen_user@90.156.208.110:3306/default_db --mysql --ssl-mode=REQUIRED
Используйте MySQL Shell, когда вам требуется больше, чем просто SQL. Это современный клиент, который поддерживает скрипты на JavaScript и Python, а также работу с JSON-документами и инструменты для администрирования кластеров (например, AdminAPI). Классическая утилита mysql остается идеальной для быстрых и простых SQL-запросов.
Командная строка — подключение по доменному имени
Timeweb Cloud поддерживает возможность подключения по сгенерированному домену (например, 45677d62fa2564570437d7d3.twc1.net). Доменное имя можно посмотреть на вкладке «Дашборд» или «Подключение».

Это удобнее, чем использование прямого IP-адреса, так как доменное имя не меняется при возможных миграциях или изменениях инфраструктуры, а также позволяет использовать SSL-сертификаты для верификации сервера.
Для максимальной безопасности рекомендуется сначала загрузить корневой CA-сертификат Timeweb Cloud, чтобы ваш клиент мог верифицировать сервер.
Загрузка сертификата (Linux/macOS):
mkdir -p ~/.cloud-certs && \
curl -o ~/.cloud-certs/root.crt "https://st.timeweb.com/cloud-static/ca.crt" && \
chmod 0600 ~/.cloud-certs/root.crt
Пример подключения в командной строке (с верификацией):
mysql \
--host=45677d62fa2564570437d7d3.net \
--port=3306 \
--user=gen_user \
--password \
--ssl-ca=~/.cloud-certs/root.crt \
--ssl-mode=VERIFY_IDENTITY
Важно: При использовании SSL-верификации (например,
--ssl-mode=VERIFY_IDENTITY) в качестве хоста необходимо указывать доменное имя, а не IP-адрес. При попытке подключения по IP-адресу вы получите ошибку SSL-верификации. Это произойдет, так как ваш клиент будет сверять IP-адрес подключения с доменным именем, указанным в сертификате сервера. При несоответствии клиент разорвет соединение.
Подключение к базе из кода
Рассмотрим варианты подключения к базе, используя язык Python.
По доменному имени с сертификатом
#!/usr/bin/python
import os
import MySQLdb
try:
db = MySQLdb.connect(
host="29b8464684a5a695e56ea17f.twc1.net",
user="gen_user",
passwd=r"password",
db="default_db",
port=3306,
ssl={
'ca': os.path.expanduser('~/.cloud-certs/root.crt'),
'verify_cert': True
}
)
print("Подключение к хосту '29b8464684a5a695e56ea17f.twc1.net' УСПЕШНО.")
except MySQLdb.Error as e:
print(f"ОШИБКА подключения к хосту '29b8464684a5a695e56ea17f.twc1.net': {e}")
По IP-адресу
#!/usr/bin/python
import MySQLdb
try:
db = MySQLdb.connect(
host="92.255.109.107",
user="gen_user",
passwd=r"password",
db="default_db",
port=3306
)
print("Подключение к IP '92.255.109.107' УСПЕШНО.")
except MySQLdb.Error as e:
print(f"ОШИБКА подключения к IP '92.255.109.107': {e}")
Графические инструменты
Рассмотрим, как подключаться к базе данных, используя графические инструменты.
Интеграция с phpMyAdmin в Timeweb Cloud
На платформе Timeweb Cloud доступна интеграция phpMyAdmin. Чтобы подключиться к вашей базе, достаточно выбрать phpMyAdmin в списке веб-интерфейсов. В новом окне автоматически откроется готовая сессия phpMyAdmin, настроенная на подключение к базе данных.

DBeaver
DBeaver — это бесплатная утилита с открытым исходным кодом для подключения к различным базам данных: MySQL, PostgreSQL, MSSQL и другим. Скачайте ее на официальном сайте.
-
После установки в интерфейсе добавьте новый сервер базы данных:

-
Выберите MySQL и укажите реквизиты для подключения:

Вы можете настроить SSL, нажав в окне подключения к базе кнопку «SSH, SSL, …» и выбрав из списка SSL:

Затем во вкладке «SSL» вы можете добавить CA-сертификат, включить или выключить SSL и проверку CA. CA-сертификат Timeweb Cloud можно взять здесь.

Например, флаг «Require SSL» выполняет аналогичную функцию флага --ssl-mode=REQUIRED в консольном клиенте mysql.
Особенности подключения в MySQL 8.0+
В MySQL 8.0 был изменен стандартный плагин аутентификации на caching_sha2_password. Этот плагин использует современное хеширование и повышает безопасность.
Возможные проблемы: Если вы используете старые версии клиентов или коннекторов, которые не поддерживают этот плагин, при попытке соединения вы можете получить ошибку, например:
caching_sha2_password is not supported
Для корректной работы необходимо либо обновить клиентское ПО, либо (в крайнем случае, что не рекомендуется) изменить метод аутентификации пользователя в самой базе данных на устаревший mysql_native_password.
Для изменения метода аутентификации в самой базе данных подключитесь к базе и выполните следующую команду для нужного пользователя:
ALTER USER '<username>'@'<host>' IDENTIFIED WITH mysql_native_password BY '<password>';
Для облачной базы MySQL в Timeweb Cloud можно указать способ хэширования при создании базы данных, а изменить — по запросу в отдел технической поддержки.

Выводы
Работать с удаленной базой данных можно с помощью специализированных клиентов (DBeaver, Workbench), веб-интерфейсов (phpMyAdmin) или программного кода (используя DSN/URI). Соединение возможно как вручную из ОС Linux, MacOS и Windows, так и автоматически при наличии в приложении соответствующего кода. Вопрос, как подключиться к локальному серверу MySQL, имеет то же решение. Отличие составляет лишь адрес, который понадобится указать в командах.
