每当我尝试运行类似 python manage.py syncdb
的命令时,我收到以下错误:
回溯(最近一次通话最后):
文件“manage.py”,第 11 行,在
执行管理器(设置)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/core/management/__init__.py”,第 438 行,在 execute_manager
实用程序.execute()
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/core/management/__init__.py”,第379行,在执行
self.fetch_command(子命令).run_from_argv(self.argv)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/core/management/__init__.py”,第 261 行,在 fetch_command
klass = load_command_class(app_name, subcommand)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/core/management/__init__.py”,第 67 行,在 load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/utils/importlib.py”,第 35 行,在 import_module
__import__(名称)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/south/management/commands/__init__.py”,第 10 行,在
导入 django.template.loaders.app_directories
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/template/loaders/app_directories.py”,第 21 行,在
mod = import_module(应用程序)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/utils/importlib.py”,第 35 行,在 import_module
__import__(名称)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/contrib/admin/__init__.py”,第 1 行,在
从 django.contrib.admin.helpers 导入 ACTION_CHECKBOX_NAME
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/contrib/admin/helpers.py”,第 1 行,在
从 django 导入表格
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/forms/__init__.py”,第 17 行,在
从模型导入 *
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/forms/models.py”,第 6 行,在
从 django.db 导入连接
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/db/__init__.py”,第 77 行,在
连接 = 连接[DEFAULT_DB_ALIAS]
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/db/utils.py”,第 91 行,在 __getitem__
后端 = load_backend(db['ENGINE'])
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/db/utils.py”,第 32 行,在 load_backend
return import_module('.base', backend_name)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/utils/importlib.py”,第 35 行,在 import_module
__import__(名称)
文件“/home/damon/Workspace/django-projects/acm-cie/env/lib/python2.6/site-packages/django/db/backends/oracle/base.py”,第 24 行,在
raise ImproperlyConfigured("加载 cx_Oracle 模块时出错:%s"% e)
django.core.exceptions.ImproperlyConfigured:加载 cx_Oracle 模块时出错:libclntsh.so.11.1:无法打开共享对象文件:没有这样的文件或目录
这可以在 Ubuntu 上解决吗?
最佳答案
您需要同时安装 cx_Oracle 和 Oracle 客户端。
cx_Oracle 可以是 found here .
合适的 Oracle 客户端可以是 found here .
您还需要在启动应用程序之前设置 LD_LIBRARY_PATH 变量。这通常可以做到(例如):
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
现在您应该能够通过 cx_Oracle 错误消息。
关于django - 无法在 Ubuntu 上使用 Django 连接到 Oracle 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4337849/