45

我可以让 Python 与 Postgresql 一起工作,但我无法让它与 MySQL 一起工作。主要问题是,在我拥有的共享主机帐户上,我无法安装诸如 Django 或 PySQL 之类的东西,在我的计算机上安装它们时通常会失败,所以也许我无法在主机上安装是件好事。

我发现bpgsql非常好,因为它不需要安装,它是一个我可以查看、读取然后调用函数的单个文件。有人知道 MySQL 的类似情况吗?

4

6 回答 6

27

MySQLdb是我以前用过的。

如果您的主机使用 Python 2.5 或更高版本,则内置对 sqlite3 数据库的支持(sqlite 允许您拥有一个关系数据库,它只是文件系统中的一个文件)。但买家要注意,sqlite 不适合生产,所以它可能取决于你想用它做什么。

另一种选择可能是打电话给你的主人并抱怨,或者更换主人。老实说,这些天来,任何支持 python 和 mysql 的自尊网络主机都应该预先安装 MySQLdb。

于 2008-08-04T21:54:11.857 回答
7

我个人对http://www.SiteGround.com作为网络主机 没有任何经验。

这只是一个猜测,但共享主机通过 MySQLdb 模块支持 Python 和 MySQL 是很常见的(例如,GoDaddy 就是这样做的)。尝试以下 CGI 脚本来查看是否安装了 MySQLdb。

#!/usr/bin/python

module_name = 'MySQLdb'
head = '''Content-Type: text/html

%s is ''' % module_name

try:
    __import__(module_name)
    print head + 'installed'
except ImportError:
    print head + 'not installed'
于 2008-08-03T18:32:27.693 回答
6

我上传它并收到内部错误

Premature end of script headers

在玩了很多之后,我发现如果我有

import cgi
import cgitb; cgitb.enable()
import MySQLdb

它会给我一个更有用的答案并说它没有安装,你可以自己看 -> http://woarl.com/db.py

奇怪的是,这会产生错误

import MySQLdb
import cgi
import cgitb; cgitb.enable()

我查看了那里的其他一些文件,似乎该库是我已经尝试过的文件之一。

于 2008-08-03T20:07:05.290 回答
6

您可以尝试使用Virtual Python设置您自己的 python 安装。在这里查看如何使用它来设置 Django 。那是很久以前写的,但它显示了我如何在没有 root 访问权限或类似权限的情况下设置 MySQLdb。一旦你掌握了基础知识,你就可以安装任何你想要的 python 库。

于 2008-08-11T23:16:33.757 回答
5

您真的希望 MySQLdb 用于任何 MySQL + Python 代码。但是,您不需要 root 访问权限或任何东西来使用它。您可以在用户目录(~/lib/python2.x/site-packages)中构建/安装它,然后将其添加到您的 PYTHON_PATH 环境变量中。这应该适用于几乎任何 python 库。

试一试,确实没有好的选择。

于 2011-01-27T06:48:31.197 回答
2

选择

https://docs.djangoproject.com/en/1.8/ref/databases/

MySQLdb 主要是使用驱动程序,但是如果您使用 python3 和 django 1.8.x 将无法正常工作,那么您应该使用 MySQLdb 中的 mysqlclient,在以下链接中

https://pypi.python.org/pypi/mysqlclient

于 2015-10-10T20:00:39.080 回答