AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题

问题[database-link](dba)

Martin Hope
Ely
Asked: 2022-08-06 07:05:11 +0800 CST

在当前模式不同时以用户身份创建数据库链接

  • 0

我在Oracle数据库中有以下情况。

我是本地数据库 LOCAL 上的用户 Bob,我所在的当前模式不是用户的模式,而是另一个不同的模式,比如说 Alice。我想做的是在这个上下文中创建一个到远程数据库REMOTE的数据库链接。我想我可以做这样的事情:

create database link db_link connect to ALICE identified by <alice_password> using 'remote';

我是 Bob,当前架构是 ALICE。当我尝试这样做时,我得到一个 ORA-01031 - 权限不足。

所以我问数据库管理员,我被告知这是不可能的。我试图理解,但我有困难。我寻求更好的背景理解。给出的原因是问题正是我是 Bob 而当前模式是 Alice,这根本不可能。

如果有人可以向我(和其他感兴趣的人)解释为什么这是不可能的,我将不胜感激?

使用公共数据库链接的选项已经存在,但我们尝试使用私有数据库链接找到解决方案。我想尽我所能找到解决办法。上下文(我是 Alice 模式中的 Bob)是应用程序运行的上下文。我们无法改变这一点:-(

oracle database-link
  • 1 个回答
  • 63 Views
Martin Hope
SMH
Asked: 2017-10-16 17:22:20 +0800 CST

为两个用户oracle创建一个私有数据库链接

  • 3

我正在尝试创建一个仅供两个用户访问的私有数据库链接,但它给了我语法错误。

我的代码:

CREATE DATABASE LINK "mylink"
 CONNECT TO USER1,USER2
 IDENTIFIED BY password123
 USING 'mydb';
oracle database-link
  • 1 个回答
  • 2694 Views
Martin Hope
User1974
Asked: 2016-07-30 12:38:35 +0800 CST

Oracle中是否有与OPENROWSET等价的东西?

  • 3

Oracle中是否有与OPENROWSET等价的东西?

从OPENROWSET (Transact-SQL):

此方法是访问链接服务器中的表的一种替代方法,是一种使用 OLE DB 连接和访问远程数据的一次性即席方法。

oracle database-link
  • 1 个回答
  • 3938 Views
Martin Hope
Kris Johnston
Asked: 2015-10-15 12:06:58 +0800 CST

使用 dbms_datapump 导入所有数据库链接

  • 1

源数据库版本:11.2.0.3
目标数据库版本:12.1.0.2

我正在尝试使用 dbms_datapump 将所有数据库链接从一个数据库导入到另一个数据库。代码在上述目标数据库上运行,并通过数据库链接从上述源数据库中提取数据库链接。

我过去使用 dbms_datapump.metadata_filter 只导入某些对象(如函数或过程)。但是,以下返回 ORA-39001:参数值无效:

dbms_datapump.metadata_filter(h1,'INCLUDE_PATH_EXPR','IN (''DATABASE LINK'')');

因此,我尝试了也返回 ORA-39001 的复数版本:

dbms_datapump.metadata_filter(h1,'INCLUDE_PATH_EXPR','IN (''DATABASE LINKS'')');

我知道我必须在这里遗漏一些基本的东西,但是在这个问题上搜索一直很烦人,因为在同一搜索中使用“dbms_datapump”和“数据库链接”的搜索结果只返回了如何通过数据库链接导入的结果,而不是如何直接导入数据库链接。

我曾经能够直接使用以下方法导入数据库链接:

select DBMS_LOB.SUBSTR@dblinkimp(DBMS_METADATA.GET_DDL@dblinkimp
('DB_LINK', '[DBlinkName]', '[SchemaName]')) from dual@dblinkimp;

然后,我将使用 execute immediate 运行上述语句的输出,但这不再是从 11.2.0.4 开始的有效选项(参见 Metalink Doc ID 1905221.1)。

oracle database-link
  • 1 个回答
  • 6390 Views
Martin Hope
Kelly Cook
Asked: 2015-02-18 15:02:46 +0800 CST

Oracle:使用数据库链接插入数据

  • 0

我正在尝试使用 SELECT 查询来使用 DB1 的数据库链接填充 DB2 中的表。我在 Windows 7 VM 上使用 Oracle SQL Developer。我连接到 DB2,并运行以下查询。

INSERT INTO DB_NAME.TABLE_NAME (SELECT * FROM DB_NAME.TABLE_NAME@LINK_TO_DB1);

每次,无论如何,我都会收到以下错误:

ORA-12154: TNS:could not resolve the connect identifier specified
12154. 00000 -  "TNS:could not resolve the connect identifier specified"
*Cause:    A connection to a database or other service was requested using
           a connect identifier, and the connect identifier specified could not
           be resolved into a connect descriptor using one of the naming methods
           configured. For example, if the type of connect identifier used was a
           net service name then the net service name could not be found in a
           naming method repository, or the repository could not be
           located or reached.
*Action:   
           - If you are using local naming (TNSNAMES.ORA file):
           - Make sure that "TNSNAMES" is listed as one of the values of the
           NAMES.DIRECTORY_PATH parameter in the Oracle Net profile
           (SQLNET.ORA)
           - Verify that a TNSNAMES.ORA file exists and is in the proper
           directory and is accessible.
           - Check that the net service name used as the connect identifier
           exists in the TNSNAMES.ORA file.
           - Make sure there are no syntax errors anywhere in the TNSNAMES.ORA
           file.  Look for unmatched parentheses or stray characters. Errors
           in a TNSNAMES.ORA file may make it unusable.
           - If you are using directory naming:
           - Verify that "LDAP" is listed as one of the values of the
           NAMES.DIRETORY_PATH parameter in the Oracle Net profile
           (SQLNET.ORA).
           - Verify that the LDAP directory server is up and that it is
           accessible.
           - Verify that the net service name or database name used as the
           connect identifier is configured in the directory.
           - Verify that the default context being used is correct by
           specifying a fully qualified net service name or a full LDAP DN
           as the connect identifier
           - If you are using easy connect naming:
           - Verify that "EZCONNECT" is listed as one of the values of the
           NAMES.DIRETORY_PATH parameter in the Oracle Net profile
           (SQLNET.ORA).
           - Make sure the host, port and service name specified
           are correct.
           - Try enclosing the connect identifier in quote marks.
Error at Line: 1 Column: 30

我一直在谷歌搜索并尝试不同的解决方案 2 天,但没有运气。我已经完成了以下所有操作:

  • 将 PATH 环境变量设置为 C:\Oracle\instantclient_11_2
  • 将 ORACLE_HOME 环境变量设置为 C:\Oracle\instantclient_11_2
  • 将 TNS_ADMIN 环境变量设置为 C:\Oracle\instantclient_11_2\network\admin
  • 在 C:\Oracle\instantclient_11_2\network\admin 中创建了一个带有正确连接信息的 tnsnames.ora 文件
  • 将 SQL Developer(工具 > 首选项 > 数据库 > 高级)中的 Tnsnames 目录字段设置为 C:\Oracle\instantclient_11_2\network\admin

我不知道为什么这些数据库链接不起作用。有人有建议吗?

oracle database-link
  • 2 个回答
  • 2098 Views
Martin Hope
mounaim
Asked: 2014-07-19 03:10:19 +0800 CST

ORA-00933: SQL 命令未正确结束

  • 1

我创建了一个指向远程数据库 MIGRERDOSSIER.US.ORACLE.COM 的数据库链接,然后我使用它在本地数据库的表中插入记录。这是我要执行的请求:

insert into 
    Dossier(num_dossier,indice,code_service,num_secteur,date_depot,type_dossier,SUP_DECL_ARE,SUP_DECL_CE,SUP_DECL_HE,SUP_DEF_ARE,SUP_DEF_CE,SUP_DEF_HE)
    select s.num_dossier,s.indice,s.code_service,s.num_secteur,s.date_depot,s.cod_sous_typ,s.SUP_DECL_ARE,s.SUP_DECL_CA,s.SUP_DECL_HE,s.SUP_DEF_ARE,s.SUP_DEF_CA,s.SUP_DEF_HA
    from MIGRERDOSSIER.US.ORACLE.COM@Dossier s

但甲骨文显示错误ORA 00933: SQL command not properly ended。

我无法解决我的请求的问题,任何帮助将不胜感激。

oracle-9i database-link
  • 1 个回答
  • 11235 Views
Martin Hope
HeDinges
Asked: 2011-12-20 03:02:11 +0800 CST

使用数据库链接时 Oracle 是否缓存查询

  • 4

一些供应商告诉我们,我们不应该在我们的数据库和他们的数据库之间使用数据库链接,因为通过数据库链接执行的查询不会被缓存,也不会被优化。

我找不到任何确认/证实这一点的信息。

天真地,我不明白为什么 Oracle 在使用数据库链接时无法进行查询缓存。

oracle database-link
  • 2 个回答
  • 4900 Views
Martin Hope
Clarkey
Asked: 2011-11-15 06:25:03 +0800 CST

Oracle:列出所有数据库链接的快速方法

  • 37

标题说明了一切,有没有办法快速列出oracle中所有当前的数据库链接?

与此类似的内容,列出了当前用户的表:

select * from user_tables;

谢谢,GC。

oracle database-link
  • 2 个回答
  • 278745 Views
Martin Hope
Dan Nolan
Asked: 2011-09-08 21:48:42 +0800 CST

确定链接服务器的最后使用日期

  • 2

我们的数据库服务器上有大量链接服务器需要清理。

是否可以确定使用链接服务器的最后日期?例如,最后一次通过它执行查询。

sql-server-2008 database-link
  • 3 个回答
  • 3420 Views
Martin Hope
eiefai
Asked: 2011-01-05 09:14:37 +0800 CST

如何使用存储过程连接到另一个数据库?

  • 11

我需要从外部数据库中获取一些数据并在另一个数据库中进行一些计算,是否可以从存储过程连接到外部数据库?多谢你们。

PS。

我使用 Oracle,两个数据库都在同一台服务器上。

oracle database-link
  • 2 个回答
  • 16474 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve