【问题标题】:How do I connect my python code to a mysql database hosted on the internet?如何将我的 python 代码连接到 Internet 上托管的 mysql 数据库?
【发布时间】:2021-09-15 15:34:37
【问题描述】:

我在https://www.freemysqlhosting.net 上创建了一个免费帐户,该帐户提供免费的mysql 数据库托管设施。我在那里创建了一个数据库,但我不知道如何从 VSCode 上的 python 代码连接到它。
截至目前,我正在使用我计算机上的数据库。
这是config.py 文件中的代码,用于建立与 MySQL 服务器的连接。

import mysql.connector as mysql

mysqlobj = mysql.connect(host='localhost', user='root',password='Mypass', database='timetable')

cursorobj = mysqlobj.cursor()

cursorobj.execute('USE timetable')

那么我如何使用一段可以执行的代码连接到所述网站上的远程数据库,因为这样可以从任何计算机建立连接,如果他们有代码这样做,而无需安装扩展(除非有必要)。
如果您需要更多详细信息,请在评论部分询问。

【问题讨论】:

  • 我不确定我是否低估了你的问题。您是否只想知道,如何连接到远程 MySql DB?如果是这样,您基本上可以使用您的代码并将host替换为您数据库访问的IP / URL,并且userpassword也需要调整。更多详情请看这里:thepythoncode.com/article/…
  • @Marc 感谢您的链接。它似乎有效,但实际上我在创建用户时遇到了问题,因为 mysql 托管网站没有提供创建或授予选项的权限。所以我需要弄清楚这一点。您对免费的远程 mysql 服务器主机有什么建议吗?
  • 该站点允许通过 phpMyAdmin 访问,因此至少应该有一个 root 用户。 (用户:root,密码:root)
  • @Marc 好吧,你是对的!但是当我通过 phpMyadmin 页面登录时,用户名作为 root,密码作为 root 以及主机名(我不会透露),它给了我一个访问被拒绝的错误。因此,如果您有其他更好的免费 mysql 托管服务提供商,请告诉我。

标签: python mysql visual-studio-code remote-mysql


【解决方案1】:

您应该使用托管 MySQL 服务器的服务器的远程地址,并在主机中提供作为连接属性公开的 IP 地址或域名,

import mysql.connector

config = {
  'user': 'test',
  'password': 'password',
  'host': 'Remote IP or Domain Name',
  'database': 'employees',
  'raise_on_warnings': True
}

cnx = mysql.connector.connect(**config)

cnx.close()

【讨论】:

    【解决方案2】:

    这看起来像是 Connecting to remote database located on web (freemysqlhosting.net‏) via visual studio c# 的副本。我从未使用过该服务(看起来很粗略)。他们应该为您提供一个连接字符串或至少包含以下内容的连接部分:

    1. IP
    2. 端口
    3. 用户名
    4. 密码
    5. 数据库

    注意:将 mysql 服务器绑定到暴露于公共互联网的端口通常不是一个好主意,即使使用用户名密码也是如此。

    【讨论】:

      【解决方案3】:

      我认为您应该使用 pyodbc 而不是 mysql 连接器。这就是我记得使用的。

      安装 pyodbc 是一个简单的pip install pyodbc 命令 您可能会发现更多有用的信息here

      【讨论】:

        【解决方案4】:

        如果您无法连接到您的hostedDB,请尝试在您的托管服务器中将您的本地 IP 地址列入白名单。

        这可能有效。

        【讨论】:

          猜你喜欢
          • 2012-10-22
          • 2021-03-28
          • 2021-09-03
          • 1970-01-01
          • 2017-06-05
          • 2017-12-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多