问题标签 [oracle-fdw]
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.
postgresql - 如何从 postgresql 数据库访问 oracle 数据库的元表
我的 oracle 数据库(11.2)和 postgresql 数据库(9.3.5)
我的要求是将数据从 oracle 数据库提取到 postgresql 数据库,为此我使用了 oracle_fdw(外国数据包装器概念)。
我可以提取特定模式(oracle db)的所有数据。
我能够提取普通表的数据。但我无法访问像 all_tab_columns 这样的元表
我创建了服务器和用户,并在访问时间时提供了服务器详细信息和用户映射详细信息(sys 权限),这给了我错误
错误:无法验证外部表“all_tab_columns”的会话 SQL 状态:HV00N 详细信息:ORA-12571:TNS:数据包写入器失败
postgresql - 如何安全地杀死 postgres 进程?
我有一个 plpgsql 函数。该函数在通过 oracle_fdw 插件连接到 OracleXE 的某个外部表中删除和插入一些行。每分钟 cron 使用 psql 为 10 个不同的表启动 10 个此函数的实例。有时(每周少于一次)一个实例卡住了。它处于活动状态,但不能取消或终止。我可以通过 SIGKILL 杀死它,但这将取消所有其他 postgres 进程并启动恢复模式。是否可以在不使用 SIGKILL 的情况下停止此过程?(CentOS 7 上的 Postgres 9.3)
postgresql - 无法为 oracle_fdw 加载库
我在创建 oracle_fdw 时遇到问题。
我已将 oracle_fdw.dll 复制到 postgres lib 文件夹 * .sql 文件和控制文件都复制到 shrared/extension
现在,当我使用超级管理员用户连接到 psql 并进行查询时
我得到回应
oracle - Postgres 外部数据包装器编码问题
我正在尝试将具有 ' ' 编码的 Oracle 数据迁移到具有 ' we8mswin1252
' 编码的我的postgres数据库中UTF8
。
我正在使用外国数据包装器。
我越来越
invalid byte sequence error
我该怎么办?
oracle - 无法在 Postgres 上创建 oracle_fdw 扩展
我按照此处的说明在PostgreSQL 服务器上安装 Oracle 外部数据包装器oracle_fdw 。
Oracle 版本: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64 位生产,在 Red Hat Linux 7.2 上运行
PostgreSQL 版本: x86_64-unknown-linux-gnu 上的 PostgreSQL 9.4.4,由 gcc (Debian 4.7.2-5) 4.7.2 编译,64 位,在 Debian 7 (wheezy) 上运行。
我能够安装 sqlplus 并成功使用 sqlplus 从 PostgreSQL 服务器连接到 Oracle 服务器,因此连接不是问题。
但是当我尝试创建扩展时,我收到以下错误:
然后我从https://github.com/dalibo/pg_qualstats/issues/1中获取线索,并将 oracle_fdw 添加到 postgresql.conf 中的 shared_preload_libraries 中,如下所示:
但现在我无法重新启动 Postgres:
查看 /var/log/postgresql/postgresql-9.4-main.log 我只看到这两行:
从 shared_preload_libraries 中删除 oracle_fdw 允许重新启动 postgres,因此这是导致重新启动失败的原因。所以我从 shared_preload_libraries 中删除了 oracle_fdw 并将其保留在 postgresql.conf 中:
然后我能够重新启动 Postgres。
以下是完成的确切步骤:
PostgreSQL 服务器的操作系统版本
Oracle Instant Client 的安装
使用此处给出的说明安装: https ://help.ubuntu.com/community/Oracle%20Instant%20Client
我从http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html下载了以下 rpm 文件:
- oracle-instantclient-basic-10.2.0.3-1.x86_64.rpm
- oracle-instantclient-devel-10.2.0.3-1.x86_64.rpm
- oracle-instantclient-sqlplus-10.2.0.3-1.x86_64.rpm
并使用以下命令将它们安装在 PostgreSQL 服务器上:
确认安装:
使用 sqlplus 连接到 Oracle 服务器
所以这很好用。
安装 oracle_fdw
从http://pgxn.org/dist/oracle_fdw/下载 oracle_fdw 版本 1.4.0 即文件 oracle_fdw-1.4.0.zip
然后解压缩并像这样安装它:
在 Postgres 中创建扩展
堆栈跟踪
我按照 Laurenz Albe 在他的回答中的建议安装了 GNU 调试器(gdb),并得到了以下堆栈跟踪(目前没有调试符号):
更新:我能够在运行在 debian 8(8.6,jessie)上的 Postgres 9.4.9 上安装扩展。我使用了 Oracle 即时客户端版本 12.1.0.2.0-1 和 oracle_fdw 版本 1.5。
database - 错误:无法加载库“oracle_fdw.dll”:%1 不是有效的 Win32 应用程序
我做的事情,按顺序:
从 entreprisedb.com 下载并安装 PostgreSQL 服务器 9.5.7 64bit,oracle_fdw 可用的最新版本
在安装的第二部分以 64 位变体安装了其他东西(postGIS、Npgsql、pgAgent 等),它给了我选择
从https://github.com/laurenz/oracle_fdw/releases/下载 oracle_fdw-1.3.0-pg95-win64.zip并将所有文件提取到它们应该在的位置,C:/Program Files/PostgreSQL/9.5/ ……
在 pgAdmin 中运行以下命令:
创建扩展 oracle_fdw;
我收到以下错误:
windows - 在 Windows 中使用 oracle_fdw 扩展创建时的问题
我正在尝试在 postgresql 9.6 中安装和使用 oracle_fdw,但是每次运行以下命令时都会收到相同的问题:
这里有两件事很奇怪:
它正在寻找 dll 的文件夹中间有一个“..”,所以它似乎应该
D:\PostgreSQL\pg96\lib
只查看,但我也有这个文件夹D:\PostgreSQL\pg96\lib\postgresql
。我在系统中设置了以下变量,但在命令中似乎没有体现:
/li>
你们能帮助我吗?我真的需要关于如何使它工作的具体说明。
谢!
oracle - 将 oracle 迁移到 postgresql 用于编码“UTF8”的无效字节序列:0x00
我正在将应用程序从 oracle 迁移到 postgresql。在我已经迁移的一个函数中,我将数据从不同的 oracle 数据库(oracle 中的 db 链接,postgresql 中的 oracle_fdw 扩展)从几个表复制到我的 postgresql db 中的本地表中。但是,我收到下一个错误:
invalid byte sequence for encoding "UTF8": 0x00
我看到有些人在这个论坛上遇到过这种问题,但他们没有尝试直接从远程数据库复制数据(他们从转储或 csv 加载数据..)。
某种想法我能做什么?
oracle - 将 oracle 应用程序迁移到 postgresql 日期/时间字段值超出范围:“1400-02-29 00:00:00 AD”
我正在将应用程序从 oracle 迁移到 postgresql。在我已经迁移的一个函数中,我将数据从不同的 oracle 数据库(oracle 中的 db 链接,postgresql 中的 oracle_fdw 扩展)从几个表复制到我的 postgresql db 中的本地表中。但是,我收到下一个错误:
当我尝试在 oracle db 中选择特定行时,我得到下一个值:
生日是数据类型是没有时区的时间戳。
任何想法 ?
database - 关于外部表 Postgres 9.5 的参考
我正在使用 oracle_fdw 从 postgres 9.5.3 连接到 Oracle 数据库。
服务器和用户映射已在 postgres db 上创建:
然后创建了外部表:
我试图引用的表格:
尝试添加约束:
结果是:
问题:您不能在外表上引用,对吗?因为 Oracle 不会关心其他数据库是否已引用到它的表中,而只是编辑/删除它的条目。