问题标签 [database-link]

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.

0 投票
2 回答
33380 浏览

oracle - 无法在 Oracle-DB 中创建指向远程数据库的数据库链接

我们公司有一个 CRM 系统,它使用Oracle 11g 数据库。它由第三方供应商开发。

我们无权访问运行 CRM 系统的服务器。但是,我们有可用的 DBA 登录数据(SYS 用户)。它包括:

  • 服务器IP:172.1.2.3
  • 端口:1521
  • SID: abc
  • 用户:sys
  • 密码:*

我们可以使用它通过Oracle SQL Developer 3.1访问数据库(连接 >> 属性)

现在必须将部分数据从 CRM 数据库复制另一个Oracle 数据库中,该数据库驻留在另一台服务器上。

据我了解,我需要在我的目标数据库中创建一个数据库链接。我试过这样的事情:

我的tnsnames.ora如下:

....我的listener.ora看起来像这样:

PROGRAM=extproc 是正确的选择吗?还有其他几个程序可供选择。我什至无法使用lsnrctl启动侦听器,因为它无法“验证用户”之类的。具有讽刺意味的是,到MS SQL 服务器的侦听器设置和数据库链接工作顺利。

现在,尽管缺少有关 CRM 数据库系统的一些重要信息,但仍然可以在 SQL Developer 中连接到数据库。难道不是也可以在两个 Oracle DB 之间建立连接吗?请帮助我设置和创建数据库链接。

- - - 编辑: - - - -

Alex Poole 的提示帮助我让它发挥作用。我用了

获取完整的服务名称。它的格式为 abc.def,其中def是域。因此,我将域名添加到tnsnames.ora中的 TNS 别名:

可以在目标数据库服务器的命令提示符下使用tnsping MYTNSENTRY测试连接。tnsnames.ora 是本地的。但是,我删除了对“本地” listener.ora的所有更改,因为该监听器确实驻留在 CRM 服务器上。

SQL 命令几乎没有变化,但现在连接正常:

0 投票
1 回答
1124 浏览

database - 远程数据库链接

我和我的团队正在为一家银行开发一个程序,需要将数据与部署在银行客户内部网络上的现有系统同步。对我们系统中的数据所做的任何更新都应复制到他们的系统中,反之亦然。我们系统使用的数据库是Oracle 11g,现有系统使用的是Oracle 10g。我们最初考虑为此使用 Web 服务,但现有系统的开发人员不想构建 Web 服务。所以我们可以选择使用数据库链接来同步数据。

  1. 使用数据库链接复制数据的优缺点是什么?
  2. 由于它是一个处理货币交易的银行应用程序,我们如何加密通过网络发送的数据?
0 投票
1 回答
14709 浏览

oracle - 在使用 oracle 数据库链接时出现错误“ORA-12154 TNS 无法解析指定的连接标识符”

我正在尝试在 oracle 10.2 上定义一个数据库链接,其连接标识符会在问题标题中引发错误。我的 tnsnames.ora 文件中有连接标识符(服务名称)。我可以使用此服务名称连接 sqlplus。没问题。这是创建sql:

创建数据库链接 dev1.REGRESS.RDBMS.DEV.US.ORACLE.COM 使用“dev1”连接到 pass1 标识的 user1;

使用链接选择:select * from t_users@dev1;

我得到:ORA-12154:TNS:无法解析指定的连接标识符

使用 sqlplus 连接到 oracle 到“未识别”服务(没有问题):sqlplus user1/pass1@dev1

我定义了另一个链接到我正在使用的同一个数据库(环回) - 工作正常。

我阅读并尝试了我能找到的关于该主题的任何内容,但没有解决这个问题。

有什么建议么?

0 投票
1 回答
5832 浏览

sql - 数据库链接名称的变量

我想做 v$session@remotedatabase远程数据库是 dblink 地址的变量的地方。那可能吗?

我正在使用 Apex 4 并尝试在所有数据库上获取临时空间。

当前查询

yieldsORA-01729: database link name expected因为变量没有正确解析?

我对 SQL 很陌生,对不起

0 投票
2 回答
3938 浏览

oracle11g - ORA-24778: 无法打开连接

我得到了ORA-24778: cannot open connections,可能的原因是什么?我们在 WAS7 配置文件中部署了许多应用程序,它们连接到 Oracle 11g 中的许多模式。

其中一种模式是通过公共数据库链接通过其他模式连接。我无法为此原因确定解决方案。

重新启动 WAS7 配置文件后,一段时间就可以了,然后再次开始遇到错误。

请帮忙!!

在此处输入图像描述

0 投票
0 回答
348 浏览

sql-server - 从 Oracle 到 SQL Server 的链接无法创建视图

使用 oracle 10 我有一个到 sql server 的链接。我有一个查询(如下)运行良好,就像一个选择语句但是当我使用它来创建一个视图时(视图创建成功但是当我尝试在 sql developer 中查看视图中的数据时)我得到一个

数据库“链接名称”在此上下文中不支持 ROWID

问题是我将一个表中的多行组合成多列的子选择吗?

谢谢你的帮助。


视图实际上是创建好的,由于某种原因,我只是不能在 sql developer 中使用数据选项卡。

0 投票
0 回答
904 浏览

sql-server - 无法使用 db 链接创建对象;ORA - 0251: 同一事务中的另一个会话或分支失败或已完成

我在 Oracle 11.2.0.3 和 SQL Server 2008 之间有一个异构链接。当我尝试创建视图或引用系统表的异构服务视图的过程时,我收到下面列出的 4 个错误:

ORA-00604: 递归 SQL 级别 1 发生错误

ORA-02051: 同一事务中的另一个会话或分支失败或已完成

ORA-06512:在“SYS.HS$_DDTF_SQLTABLES”,第 58 行

ORA-06512: 在第 1 行

例如,当我尝试执行以下代码时会创建这些错误:

但是,我可以在任何普通表上创建视图:

我已经对与此类似的问题进行了一些研究,但没有找到与此特定问题相关的任何参考资料。我相信这可能与创建视图的并发操作和对SQL Server数据库的select *语句调用之间的冲突有关。或者可能是在创建视图时没有完全获取记录。

我不知道 HS 链接配置和属性的细节。

0 投票
1 回答
923 浏览

sql - 有没有其他方法可以在不创建数据库链接的情况下使用 Oracle SQL Developer 查询两个数据库

我正在尝试编写一个查询,该查询需要访问两个单独的数据库连接并且无法弄清楚如何。我有我的 .sql 文件连接到连接:A,但我需要加入来自连接的信息:b 以获取我需要的所有信息。我无法创建数据库链接,这是我随处可见的答案。查询将如下所示:

0 投票
2 回答
6988 浏览

oracle - 如果未在存储过程中创建,则创建 DB 链接

我正在尝试在 Oracle 中编写存储过程。我没有大量的经验,我遇到了一个问题。该过程的最终目标是从一个数据库中获取数据并以不同的形式将其放入另一个数据库中。我的大部分程序似乎都在工作,但我遇到了一些看起来应该很简单的问题。在代码的开头,我想检查以确保创建了数据库链接。如果没有,那么我想创建数据库链接。

这是我在我的程序中放入的内容:

我知道该链接有效,因为我已经在此之外完成了它并对其进行了查找。我尝试编译时遇到的错误是:

在预期以下情况之一时遇到符号“CREATE”:

我已经完成了所有我认为可以做的谷歌搜索,但我无法弄清楚我做错了什么。为了避免我遇到的另一个问题,我还尝试通过输入:

声明 test_count 数;

但我得到同样的错误。我也不确定在 begin 中设置 begin 是否有效。任何帮助都会很棒......好吧,帮助。

0 投票
1 回答
6373 浏览

sql - 使用数据库链接从另一个表更新表

我需要在不同的连接中从 table2 向 table1 中的用户名字段添加值。

到目前为止,我所拥有的是:

内部 SELECT 返回我想要的但是当我添加它返回的其余代码时:

我不知道如何解决这个问题。

任何人?