`
clq9761
  • 浏览: 592807 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

Oracle中dblink应用小结

阅读更多

  1.查看数据库的global_name
        SELECT * FROM GLOBAL_NAME;
  
  2.查看global_name参数是true还是false
       show parameter global_name
       如果为true,本地建立的dblink名称必须与远程的global_name一致才行。
  
  3.创建dblink
       CREATE DATABASE LINK数据库链接名
       CONNECT TO 用户名
       IDENTIFIED BY 密码
       USING ‘数据库连接字符串’;


      例1:CREATE PUBLIC DATABASE LINK CONN_MY_LINK
       CONNECT TO MYUSER IDENTIFIED BY MYPASSWORD
       USING 'MYORAL';
       其中MYORAL为客户端服务器建立的访问服务端服务器的本地命名,
       LINK CONN_MY_LINK为本地建立的dblink名称

 

       例2:CREATE PUBLIC DATABASE LINK LINK_HSMIS
               CONNECT TO BI
               IDENTIFIED BY BI
              USING '(DESCRIPTION =
                         (ADDRESS_LIST =
                         (ADDRESS = (PROTOCOL = TCP)(HOST = 10.188.245.201)(PORT = 1521))
                          )
                        (CONNECT_DATA =
                        (SERVICE_NAME = hsmis)
                        )
                )';

          直接用本地命名连接字符串替代本地命名。

 

        // 赋予创建权限

        grant CREATE DATABASE LINK to smis;       
        grant CREATE SYNONYM to smis;
  
  4.查询dblink是否创建成功
      SELECT * FROM DUAL@数据库链接名
      或SELECT * FROM表名@数据库链接名

 

  5.删除dblink
     drop public database link CONN_MY_LINK

 

  6.使用同义词简化:
     CREATE SYNONYM S_MY_TABLE FOR TABLENAME@数据库链接名;

 

  7.db_link查询时出现锁的解决方案
      每次使用db_link查询时释放连接,调用dbms_session包中的关闭函数即可
      例:dbms_session.close_database_link(CONN_MY_LINK);
      或使用dblink的时候,即使是select文也要进行commit,或者是rollback,
      否则时间长了会阻碍其他进程。

 

  8.查询dblink时出现无法处理服务器名的解决方案
       要在相应的数据库在服务器上建立相应的连接, 如A数据库在A1服务器上,B数据库在b1服务器上,
       如果要在A数据库中连接B数据库,则要在服务器A1上建立相应的tnsnames配置项如下:
     (在Win环境下的Oracle中,Oracle\Network\ADMIN\tnsnames.ora 文件中进行配置)
      A_TO_B =  
      (DESCRIPTION =  
      (ADDRESS_LIST =  
      (ADDRESS = (PROTOCOL = TCP)(HOST =A2服务器的IP)(PORT = 1521)) )         
      (CONNECT_DATA =  
      (SERVICE_NAME = B数据库的服务名)))         
      然后建立相应dblink,容易犯的错误是:
      在自已的客户端的tnsname.ora中建立连接,而没有在A数据库所有的
      服务器A1的tnsname.ora中建立连接。

 

  9.查看锁表进程和解锁
     (1)方式一:
     select sess.sid,  
     sess.serial#,  
     lo.oracle_username,  
     lo.os_user_name,  
     ao.object_name,  
     lo.locked_mode  
     from v$locked_object lo,  
     dba_objects ao,  
     v$session sess  
     where ao.object_id = lo.object_id and lo.session_id = sess.sid;
     (2)方式二:
      select * from v$session t1, v$locked_object t2
      where t1.sid = t2.SESSION_ID;
     (3)进程解锁  
     如有记录则表示有锁,记录下SID和serial# ,将记录的ID替換下面的SID, serial,即可解除LOCK
     alter system kill session 'SID,serial';

分享到:
评论

相关推荐

    Oracle之dblink的配置

    Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置

    oracle通过DBlink连接mysql搭建过程

    使用 DBlink 连接 Oracle 和 MySQL 数据库 Oracle 通过 DBlink 连接 MySQL 搭建过程是一个复杂的过程,需要安装和配置多个组件,包括 unixODBC、mysql-connector-odbc 和 Oracle 环境变量。本文将详细说明这个过程...

    Linux下ORACLE 使用dblink连接mysql_lijilinjy的专栏-CSDN博客.mhtml

    Linux下ORACLE 使用dblink连接mysql_lijilinjy的专栏-CSDN博客.mhtml

    oracle dblink 创建过程

    ### Oracle DBLink创建过程及快照同步方法 #### 一、Oracle DBLink概念与创建步骤 DBLink(Database Link)是Oracle提供的一...需要注意的是,在实际应用过程中,还需要考虑网络延迟、数据量大小等因素对性能的影响。

    oracle dblink 的应用

    Oracle dblink 是 Oracle 数据库中用于连接不同数据库实例的工具,允许用户在多个数据库之间进行数据查询、更新和传输。它的主要应用场景是在分布式环境中,当需要从一个数据库访问另一个远程数据库的数据时。以下是...

    Oracle通过DBlink连接MySQL

    创建成功后,就可以在Oracle SQL中通过DBLink查询MySQL的数据了。 在实际操作中,务必注意字符集的匹配,避免因字符集不一致导致的数据乱码问题。此外,安全也是重要的考虑因素,确保敏感信息如用户名和密码的安全...

    oracle通过dblink链接 mysql和mssql例子

    Oracle数据库提供了异构...以上步骤展示了如何通过Oracle数据库中的DBLink连接MySQL和MSSQL数据库。DBLink的使用大大扩展了Oracle数据库的数据处理能力,使用户能够在单个数据库操作环境中访问和操作多个异构数据源。

    oracle 存储过程 函数 dblink

    DBLink(Database Link)是一种允许在一个Oracle数据库实例中访问另一个Oracle数据库实例中的对象的技术。DBLink的应用场景非常广泛,例如在不同的数据库实例之间复制数据、合并多个数据库中的数据等。 #### 七、...

    Oracle建立DBLINK的详细步骤记录

    Oracle 建立 DBLINK 的详细步骤记录是指在 Oracle 数据库中建立一个数据库链接(DBLINK),以便在本地数据库中访问远程数据库中的数据。下面是建立 DBLINK 的详细步骤记录: 查看 GLOBAL_NAME 在建立 DBLINK 之前...

    oracle使用dblink高速复制表数据的动态存储过程

    执行存储过程,通过指定目标数据库登录信息,动态生成dblink,打开游标,按批次插入本地指定表中,每批次1万条数据。同步记录和日志信息写在自动生成的sync_log表中。同步完成后自动删除动态生成的存储过程、dblink...

    oracle使用dblink的例子

    需要注意的是,在实际应用中,应确保源数据库和目标数据库的DBLink配置正确无误,同时考虑性能因素,避免在生产环境中执行大规模的数据对比操作,以免影响系统性能。此外,还应注意保护敏感数据的安全性,确保只有...

    Oracle使用dblink导用户下的所有表数据(以迁移scott用户为例)

    Oracle数据库是一种广泛应用于企业级数据存储和管理的系统,它提供了强大的数据迁移工具,其中之一就是DB Link(数据库链接)。在本教程中,我们将探讨如何利用DB Link来迁移Oracle数据库中的用户下所有表的数据,以...

    oracle建立dblink步骤

    在企业级应用中,经常需要跨地域或跨部门进行数据共享与交互。本文档详细介绍了一种在Oracle环境下实现跨数据库连接的方法——DBLink(数据库链接)。通过构建DBLink,可以实现在一个数据库环境中直接查询或操作另一...

    Oracle DBLink建立连接

    通过以上内容的学习,我们可以了解到Oracle DBLink是一种非常实用的功能,它不仅能够简化多数据库环境下的数据集成工作,还能有效提升数据管理和应用开发的灵活性。同时,在实际应用中需要注意权限管理和安全性问题...

    oracle通过dblink连接mysql

    oracle通过dblink连接mysql,主要参考了网上的文章,由于本人oracle服务端是32位,MySQL是64,附件中包含32位驱动 mysql-connector-odbc-5.2.4-ansi-win32.msi

    oracle oracle_dblink详解.

    数据库链接(DBlink)是 Oracle 数据库中的一种对象,允许用户查询远程表和执行远程程序。在分布式环境中,数据库链接是必要的。数据库链接是单向的连接,在创建数据库链接时,Oracle 会在数据字典中保存相关的...

    oracle通过odbc建立dblink访问sqlserver数据库

    ### Oracle通过ODBC建立DBLink访问SQLServer数据库 在企业级应用环境中,不同数据库系统间的交互变得越来越频繁。为了实现Oracle数据库与SQLServer数据库之间的数据交换,可以通过多种方式实现连接,其中一种较为...

    在oracle下创建dblink

    ### 在Oracle下创建...通过以上内容的学习,我们对Oracle中的DBLink有了更深入的理解,包括其基本概念、创建方法以及相关的权限管理等内容。这对于实际工作中处理多数据库环境下的数据交互问题具有重要的指导意义。

    oracle 创建dblink

    oracle创建dblink 连接远程服务器,创建连接。

Global site tag (gtag.js) - Google Analytics