问题标签 [unixodbc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP unixODBC Apache Segfault
我可以从命令行很好地运行我的脚本:php test.php 并连接,返回我的简单查询,然后断开与 oracle 的连接。当我运行时:
它连接,我也可以查询。问题是当我从浏览器运行脚本时,我收到了一个很棒的 500 错误,并且在我的日志文件中出现了一个段错误。现在 apache 不是为调试而编译的(这很烦人)。我希望不必重新安装 apache 并进行调试。
我正在使用:PHP:
阿帕奇:
甲骨文客户端:
Linux内核:
unixODBC:unixODBC.x86_64 2.2.14-12.fc14(来自 yum)
我什至无法运行高级调试或登录 php,因为一旦我在浏览器中访问 URL,apache/php 就会退出。
我目前正在尝试查看是否可以运行:
看看我能不能暂时解决这个问题。如果需要,我很乐意分享其他任何内容。
sql-server - 与 MSSQL [MicroSoft SQL SERVER] 一起使用时 Rails 迁移出错 - 找不到数据类型 primary_key
我正在研究 Rails 3 项目,我最初使用 MySQL 作为 RDBMS。但后来我的客户要求我们应该使用 MSSQL。花了半天后,我可以使用这里的文章连接 MSSQL 服务器:http: //oldwiki.rubyonrails.org/rails/pages/HowtoConnectToMicrosoftSQLServerFromRailsOnLinux
但经过所有努力,当我尝试迁移时,出现以下错误:
这是 rake db:migrate 的错误
当我重新运行相同的命令时,我收到错误:
- 这意味着至少连接正常!
以下是 rake db:schema:load 的错误
我用谷歌搜索了这个错误,但找不到任何帮助,它似乎不是一个流行的组合。
我目前以两种方式看待这个问题:
尝试通过使 rails 以 MSSQL 友好格式输出 SQL 来解决手头的问题。如果第一个失败,那么
作为一种解决方法,将原始 mysql 转储转换为 MSSQL 格式。
unixodbc - unixodbc 和 netezza ODBC 驱动程序问题(未定义符号:SSL_connect)
我正在尝试设置 unixODBC 以连接到 Netezza 数据库,但是当我尝试使用 isql 进行连接时,我得到了“未定义符号:SSL_connect”。
当前使用:CentOS 5.5、unixODBC 2.3.0(与 2.2.11 相同的问题)。
我做了以下事情:
- 根据 ODBC 驱动程序附带的 README.txt 配置 LD_LIBRARY_PATH、ODBCINI 和 NZ_INI_FILE_PATH。
- 确保通过使用 ldd 命令并为 libssl 和 libcrypto 设置符号链接来加载所有库。
- 更新了 /etc/ld.so.conf 文件以确保加载了 netezza 驱动程序路径。
- 使用 nm 确认 SSL_connect 符号在驱动程序中。
对这个符号的文件运行 dltest 报告“找不到文件”错误,这是我尝试运行 isql -v 时通常得到的错误,但是我更改了 LD_DEBUG 环境变量以获取额外的调试信息,这导致我使用 SSL_connect .
(仅供参考,export LD_DEBUG=files isql sospos
是我使用的。)
有什么想法吗?这让我发疯,因为看起来一切都在那里,但它仍然无法正常工作。最糟糕的是,我几个月前在 Ubuntu 10.10 上设置了同样的东西,它运行时没有任何问题。
更新:
首先,libnzodbc.so 文件上的 ldd 看起来不错。已满足所有依赖项。
其次,我在文件中唯一能看到的是 en_US 语言环境的 libc.mo 文件,所以我设置了一个指向 en_GB 的符号链接。不幸的是,它仍然抛出相同的错误,即使它看起来像是找到了它正在寻找的所有其他库。我应该寻找的 strace 输出中还有其他内容吗?
更新 2:
我目前看到的一个问题是 isql 正在 ISO8859-1.so 中寻找 gconv_end,但是该符号不存在。有趣的是,我的 Ubuntu 服务器虚拟机上不存在该符号,而 isql 工作正常。我上面指定的两个版本的 unixODBC 都有相同的问题。
更新 3:
OK 使用 -d 和 -r 选项重新运行 ldd,是的,仍然存在问题。缺少每个 SSL* 符号。我猜这意味着我创建了一个指向错误文件的符号链接。任何人都知道哪个 ssl 库文件包含 SSL_connect?
php - PHP ODBC 连接到 H2 数据库
你能帮我解决这个问题吗?
我正在尝试使用 PHP OBDC 连接到 H2 数据库,但收到以下错误消息:“SQL 错误:[unixODBC]未知身份验证类型,SQLConnect 中的 SQL 状态 28000”
我使用以下连接: $DSN = "Driver=PostgreSQL;Server=$Srv;Port=5435;Database=$DB;"; $CID = odbc_connect($DSN,$usr,$pwd);
如何解析连接字符串中的身份验证类型。
谢谢。
python - unixODBC 错误 IM001
尝试执行任何简单查询时出现以下错误。我只是无法弄清楚发生了什么变化。
这是 sqlalchemy (Elixir) 类的示例:
数据库连接正常,类构造正常,因为我可以dir(Song)
看到所有正确的列。但是,简单的查询是行不通的。
这是对该类的查询和结果输出:
设置细节:
- 32 位 Arch Linux
- Python 2.7.2
- sqlalchemy 0.7.2
- 灵丹妙药 0.7.1
- FreeTDS 0.82-5
- unixodbc 2.3.0-1
/etc/odbcinst.ini:
/etc/odbc.ini:
ruby-on-rails-3 - 将 Redhat 连接到 SQL Server 2008 for Ruby on Rails
我正在尝试将 Redhat Linux 连接到 Microsoft SQL Server 2008。我已经在 Windows(我的测试机器)上设置它时遇到了麻烦,但现在我需要将它部署在将用于生产的 Linux 机器上。
所以我安装了 unixODBC 和 FreeTDS(付出了很多努力,甚至不确定它是否安装正确:S),结果是我有 3 个文件/usr/local/etc
:
然后我编辑了freetds.conf
文件,这就是我添加的内容:
我必须从我的 DBA 那里找出端口号,因为它在 SQL Server 2008 中设置为动态。
我的odbcinst.ini
文件如下所示:
我的odbc.ini
文件如下所示:
所以现在我尝试使用连接来查看是否有任何连接
tsql -S sqlServer -U test -P test
,但是这只给了我以下错误:
当我尝试使用 isql,doingisql -v sqlServer test test
时,会吐出以下错误:
有什么想法我可能做错了吗?
ssh - 通过 ssh 隧道到第三台机器的 ODBC
在工作中,我们有一个无法从内部网络外部连接的 SqlServer 数据库。如果我们想远程工作,我们可以通过 ssh 连接到我们网络上的其他几台服务器,然后通过 X 转发工作,这样开发应用程序就可以访问数据库。
这很烦人,原因有很多,例如 IDE 中的延迟,我想知道如何将数据库连接隧道回我的机器。看起来这应该是可能的,但我不知道该怎么做,因为中间必须有一个中间步骤。 这个问题与我想做的类似,但如果我理解正确,仅适用于直接进入数据库服务器。
我专门询问 ODBC,因为那是应用程序已经使用的驱动程序。如果有更通用的解决方案,我当然会对此持开放态度。
我想做的是
python - 使用备用 unixODBC 安装
我在一个将 unixODBC 安装在组织范围的集中安装驱动器上的环境中工作,但我们(实际开发人员)不允许在其中安装驱动程序或数据源。这一切都是倒退的,但我必须忍受它。
现在我正在尝试构建一个从这个 unix enviro 连接到 mssql 2005 服务器的 python 应用程序,所以我显然需要一些 sql 驱动程序!
我通过在我可以完全控制的驱动器的一部分上重新安装 unixODBC 来避免无法访问预安装的 unixODBC。我已经安装了 freeTDS 并配置了所有内容,以便我可以使用 isql 成功连接到服务器——太棒了!
现在唯一的问题是,当我在我的 python 程序(使用 pyodbc)中执行一行时,例如:
我明白了
我认为这是因为 pyodbc 仍在寻找原始的 unixODBC 安装,而不是我的本地安装。所以我想知道:
如何配置我的脚本以查找我的本地 unixODBC 安装,而不是安装在主驱动器上的那个
sql-server - 通过 ODBC 查询 SQL Server DB 的数据库架构?
是否有一种通用的方法来使用跨数据库工作的 ODBC 检索数据库模式?
如果不是,当数据库服务器是 MS SQL Server 时,最简单的方法是什么?
我正在使用来自 Linux 的 unixodbc。