Как использовать MySQL с Python в настройке клиентского сервера - PullRequest
0 голосов
/ 02 апреля 2020

Я бы хотел разработать проект python в стиле клиент-сервер. Мой код Python будет развернут на клиентском компьютере и база данных MySQL на сервере, поэтому все соединения должны проходить через сетевое соединение.

Я знаю, как использовать Python с MySQL с основами, такими как создание таблиц и запросов и т. д. c, однако я хотел узнать, как подключить мой python проект к базе данных по сетевому протоколу.

Я искал в Google или YouTube, но только найдены ресурсы, использующие локальное соединение с базой данных.

Где я могу найти Python ресурсы (статья, блог, пример, учебное пособие или видео), в которых объясняется, как подключиться к MySQL через сеть?

Ответы [ 2 ]

0 голосов
/ 03 апреля 2020

Это, кажется, хороший гид.

https://pynative.com/python-mysql-tutorial/

Я быстро попробовал Py MySql. Оно работает. Единственная проблема в том, что это в бета-версии. https://pymysql.readthedocs.io/en/latest/user/examples.html

Поэтому я предлагаю вам попробовать MySQL Connector Python, который будет немного болезнен при первоначальной настройке, но он получен от поставщика. так что вы можете доверять ему немного лучше.

или, альтернативно, https://pypi.org/project/mysqlclient/

import pymysql.cursors
import pymysql

try:
    conn = pymysql.connect(host='10.1.1.1 (remote server ip or hostname)',
                            user='db_user_name',
                            password='db_password',
                            db='name_of_db',
                            cursorclass=pymysql.cursors.DictCursor)

    sql = "select * from users"

    with conn.cursor() as cursor:
        # Read a single record
        sql = "select * from users"
        cursor.execute(sql)
        result = cursor.fetchall()
        print(result)
except Exception as inst:
    print(str(inst))
finally:
    conn.close()
0 голосов
/ 03 апреля 2020

У вас есть сервер с запущенной базой данных MySQL и клиентское приложение python, которому нужны данные из базы данных?

Я думаю, что обычно клиентское программное обеспечение никогда не подключается напрямую к базе данных (по соображениям безопасности). Вместо этого клиент связывается с серверным приложением (может быть, через REST-API ).

Как я это имел в виду

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...