django - 无法在 Ubuntu 上使用 Django 连接到 Oracle 数据库

标签 django oracle ubuntu

每当我尝试运行类似 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/

相关文章:

opencv - 如何在 ubuntu 11.10 中安装 opencv?

ubuntu - 在 ubuntu 14.04 上默认阻止启动到桌面 GUI

django - 为什么处理 POST 数据后重定向很重要?

sql - 如何在oracle SQL表中插入法国数字格式

oracle - 关闭还是不关闭Oracle Connection?

java - 使用 CLOB 和 VARCHAR2 参数从 PL/SQL 调用 Java 函数

ubuntu - vmdk 中的数据在通过 libguestfs 命令 guestmount 挂载后未更新

python - 删除 Django DB 中的重复行

python - 我应该如何在 Google App Engine 项目中导入 django.middleware 类?

Django ORM 获取每行的最新版本(内连接)