2009-04-21 4 views
1

私はほんの数時間前に私のためMySQLdbをインストールし、私の共有サーバー共有サーバーにDjangoをインストールする:MySQLdbという名前のモジュールはありませんか?

#!/usr/bin/python 
import sys, os 

sys.path.insert(0, "/home/<username>/python/django") 
sys.path.insert(0, "/home/<username>/python/django/www") # projects directory 

os.chdir("/home/<username>/python/django/www/<project>") 
os.environ['DJANGO_SETTINGS_MODULE'] = "<project>.settings" 

from django.core.servers.fastcgi import runfastcgi 
runfastcgi(method="threaded", daemonize="false") 

しかし、私のWebホスト上でこのスクリプトを実行しようとすると、私はこのエラーに

Traceback (most recent call last): 
    File "/home/<username>/flup/server/fcgi_base.py", line 558, in run 
    File "/home/<username>/flup/server/fcgi_base.py", line 1116, in handler 
    File "/home/<username>/python/django/django/core/handlers/wsgi.py", line 241, in __call__ 
    response = self.get_response(request) 
    File "/home/<username>/python/django/django/core/handlers/base.py", line 73, in get_response 
    response = middleware_method(request) 
    File "/home/<username>/python/django/django/contrib/sessions/middleware.py", line 10, in process_request 
    engine = import_module(settings.SESSION_ENGINE) 
    File "/home/<username>/python/django/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
    File "/home/<username>/python/django/django/contrib/sessions/backends/db.py", line 2, in ? 
    from django.contrib.sessions.models import Session 
    File "/home/<username>/python/django/django/contrib/sessions/models.py", line 4, in ? 
    from django.db import models 
    File "/home/<username>/python/django/django/db/__init__.py", line 41, in ? 
    backend = load_backend(settings.DATABASE_ENGINE) 
    File "/home/<username>/python/django/django/db/__init__.py", line 17, in load_backend 
    return import_module('.base', 'django.db.backends.%s' % backend_name) 
    File "/home/<username>/python/django/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
    File "/home/<username>/python/django/django/db/backends/mysql/base.py", line 13, in ? 
    raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e) 
ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb 

を取得しています。シェルからPythonを実行すると、私はMySQLdbをうまくインポートできます。なぜこのスクリプトはそれが見つからないと報告しますか?

答えて

2

あなたのpythonパスにpython-mysql dbドライバがありません。 あなたが見ているpythonpathを把握できるかどうかを確認してください。シェルで経験しているものとは異なる可能性があります。

+0

ああ、これは正しいですが、私は単に 'print sys.path'をpythonシェルから取り出し、それらのパスをスクリプトにコピーしました。問題を修正しましたが、別のファイルを作成しました... – mpen

+0

Nevermind ...私は本当にdjango.pyというファイルに名前を付けてはいけません:p – mpen

1

settings.pyに間違ったDATABASE_ENGINE設定がある可能性はありますか?それはmysqlでなければならず、そこにはmysqldbではありません。

+0

*ダブルチェック*いいえ。それはそれじゃないけど、ありがとう。 – mpen

関連する問題