【问题标题】:Access database from a differet host in django从 django 中的不同主机访问数据库
【发布时间】:2013-12-28 12:18:14
【问题描述】:

我有一个 django 站点,我需要从另一个主机中的另一个数据库访问数据。我如何连接它,即使我连接,我如何从这个数据库访问该表,而不在models.py 中有表的数据?请帮帮我

【问题讨论】:

    标签: mysql django host


    【解决方案1】:

    如果你想使用 Django ORM,你可以使用 Django 内置的multi-database support。要创建 models.py 文件,您可以使用inspectdb management command。

    如果你不需要 ORM,你仍然可以在你的设置中指定额外的数据库,但是only perform raw SQL queries。您需要为您的附加数据库获得正确的连接:

    from django.db import connections
    cursor = connections['my_db_alias'].cursor()
    

    【讨论】:

    • 我使用了各个主机的用户名和密码,但由于访问被拒绝而出现错误
    • 它说我正在访问的主机被拒绝访问
    • 也许您的 MySQL 身份验证配置不允许从运行您的 Django 应用程序的主机进行访问。如果您想排除配置问题,请尝试 django 主机中的 mysql CLI
    • 但是如何从我的 django 应用程序中使用 mysql CLI?我希望在用户请求时访问数据库
    • 您可以使用 django 应用服务器中的 mysql cli 来验证连接是否有效。如果它确实有效,则问题(“访问被拒绝”)与 django 配置有关,如果它不起作用,则问题出在 mysql 端(或错误的用户名/密码)
    猜你喜欢
    • 2016-12-23
    • 2023-03-30
    • 2017-11-30
    • 2016-08-10
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    • 2022-01-11
    • 2012-06-09
    相关资源
    最近更新 更多