1727

Подключение к удалённому Mysql серверу.

1 ответ

Добрый день. Не могу подключиться к Mysql серверу. Если быть точнее, то подключение к серверу и вход в Mysql через консоль работает, но с помощью яп Python у меня не получается этого сделать. Многое перепробывал, но ничего не выходит.

Вот мой код:
 

from sshtunnel import SSHTunnelForwarder

server = SSHTunnelForwarder(
    'vh394.timeweb.ru',
    ssh_username='cc70818',
    ssh_password='my_password',
    remote_bind_address=('127.0.0.1', 3306)
)

server.start()

connector = pymysql.connect(
    host="37.76.166.225", #мой ip (так же пробовал через 127.0.0.1)
    port=server.local_bind_port,
    user="cc70818_1",
    password="db_password",
    database="cc70818_1",
)
server.stop()

После выполнения кода получаю вот такую ошибку:
 

Traceback (most recent call last):
  File "/home/kostya/.local/lib/python3.8/site-packages/pymysql/connections.py", line 613, in connect
    sock = socket.create_connection(
  File "/usr/lib/python3.8/socket.py", line 808, in create_connection
    raise err
  File "/usr/lib/python3.8/socket.py", line 796, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/kostya/PycharmProjects/my_project_/mysql_/mysql_class.py", line 89, in <module>
    connector = pymysql.connect(
  File "/home/kostya/.local/lib/python3.8/site-packages/pymysql/connections.py", line 353, in __init__
    self.connect()
  File "/home/kostya/.local/lib/python3.8/site-packages/pymysql/connections.py", line 664, in connect
    raise exc
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on '37.76.166.225' ([Errno 111] Connection refused)")

 

Но почему так происходит я не понимаю, ведь с консоли всё получается. Буду рад любой помощи (помогите пожалуйста).

Ответы (1)

Александр 0
22.12.2021 23:51
Использую MySQL Connector:

pip install mysql-connector-python

Скрипт (виртуальный хостинг Ubuntu 18.04.6 LTS, Python 3.6.9):

import mysql.connector
db = mysql.connector.connect(
host="localhost",
user="cc40000_mydb",
password="12345678",
database="cc40000_mydb"
)
cursor = db.cursor()
cursor.execute("SELECT * FROM STATS LIMIT 10")
result = cursor.fetchall()
for x in result:
print(x)

Похожие вопросы

Artsiom
226

Ошибка: DeprecationWarning: use options instead of chrome_options

Здравствуйте! У меня не хочет работать скрипт, выдает ошибку: DeprecationWarning: use options instead of chrome_options В коде появились строчки: options = webdriver.ChromeOptions() options.add_argument('headless') options.add_argument(f'window-size={1920},{1080}') options.add_argument('hide-scrollbars')...
Не указано
361

Подключение по SSH

Как подключиться удаленно по SSH? Хотим дать доступ сторонней организации для работ, просят доступ по ssh.  в ПУ не могу понять как настроить доступ. Что делать?
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Войти в Комьюнити
Регистрация в Комьюнити
Восстановление пароля