求助:Oracle通过DBlink关联远程表更新本地表速度慢的问题 [问题点数:50分]

Bbs1
本版专家分:5
结帖率 95.65%
Bbs9
本版专家分:63267
版主
Blank
GitHub 绑定GitHub第三方账户获取
Blank
进士 2017年 总版技术专家分年内排行榜第八
Blank
优秀版主 2016年10月优秀大版主
优秀小版主
Blank
银牌 2017年1月 总版技术专家分月排行榜第二
Bbs2
本版专家分:491
Bbs1
本版专家分:5
Bbs4
本版专家分:1938
Blank
红花 2018年7月 Oracle大版内专家分月排行榜第一
调试经验——使用DBLINK查询非常耗时且不可靠(原因不在于DBLINK,而在于SQL代码中漏添加了DBLINK语句)
<em>问题</em>描述:nn由于生产环境数据库只提供了查询权限(read-only privilege),只能在开发环境中创建自定义函数。但是,报表所需的数据仅存在于生产数据库中,在开发数据库中是空表。所以,试图<em>通过</em>DBLINK的方式<em>通过</em>开发数据库中访问生产数据库。但是,发现一个比较坑的地方:使用DBLINK查询非常耗时且不可靠。nn具体表现在:nn同样的SQL,在开发环境中半天查不出结果。即使取消执行,也会停...
【Oracle】通过dblink创建表并同步数据
需求:nn从另一个机器上的数据库A同步一张表的所有数据到本地数据库B,B上建有A的<em>dblink</em>,但没有A中的任何对应的表。nn在 B 机器上执行以下语句:nnnCREATE TABLE table_to AS SELECT * FROM table_sorc@HRUSER;nn相关说明:nn该语句执行后,会在B数据库创建一张与A数据库中table_sorc结构一模一样的表table_to。nnn ...
mysql 使用federated 引擎实现dblink 远程表访问
MySQL中针对不同的功能需求提供了不同的存储引擎。所谓的存储引擎也就是MySQL下特定接口的具体实现。federated是其中一个专门针对<em>远程</em>数据库的实现。一般情况下在本地数据库中建表会在数据库目录中生成相应的表定义文件,并同时生成相应的数据文件。但<em>通过</em>federated引擎创建的表只是在本地有表定义文件,数据文件则存在于<em>远程</em>数据库中。<em>通过</em>这个引擎可以实现类似Oracle 下DBLINK的<em>远程</em>数
利用Oracle DBLink现实数据库更新功能
1、DBLink作用:将多个不同地点的服务器的Oracle数据库连接起来,逻辑上可看成一个数据库来对待,实现数据库之间的单向操控。rn2、要使用DBLink,首先你要有操作DBLink的权限;rngrant CREATE DATABASE LINK to ywgl;rn3、创建数据库连接rnSQL>CREATE DATABASE LINK LinkTest CONNECT TO General I
Oracle通过DBLink操作数据表,报错“ORA-22992:无法使用从远程表选择的lob定位器”
---1、在本地创建包含blob的临时表ncreate global temporary table temp1 (a varchar2(20),x BLOB)non commit delete rows n---2、在本地创建目标临时表nCREATE TABLE TEMP2nASnselect * from temp1  where 1=2n---3、将<em>远程</em>表的数据插入到临时表中
DBLINK 复制表数据
两台不同sid的服务器间复制数据 DBLINK。A数据库中需要复制B的表数据。n1、查看A数据库用户是否有DBLINK 的权限nnnselect * from user_sys_privs where privilege like upper('%DATABASE LINK%'); nnnnnnselect * from user_sys_privs where privile
DBlink的性能问题
关于DBlink的性能<em>问题</em>:rn原则:把DBlink建立在数据量小的数据库中,减少DBlink的数据连接。rnrnrnrnrn对于表<em>关联</em>的写法rn例如: rnrnrnrnrn表名rn数据量rn数据库rnrnrncux_msc_plan_datarn1000rnEBSrnrnrnmsc_full_peggingrn100000000rnASCPrnrnrnrnrnEBS中速度快的写法:rn在EBS中
Oracle至Sql Server用DB Link查询缓慢原因之一
公司系统有一个每日同步进程,从A系统数据库(Oracle 11g)提取B系统数据库(Sql Server 2005)每天新增的数据,实现的方法为:在A数据库中建立物理视图,来<em>通过</em>DBlink引用B数据库中的数据源,A系统每天对该视图中的数据做提取。rn进程跑了一年多没出<em>问题</em>,只是执行速度较慢,从最初的半个小时左右,到了最近的1个小时左右,再到最近的频频报错;rn开始是认为数据量过大,看到网上有帖说
通过dblink连接查看远端表提示表或视图不存在
<em>通过</em><em>dblink</em>连接查看远端表提示表或视图不存在1. A库:rnuser1用户下有source_table表rnuser1_interface用户下创建user1下source_table的同义词rn create synonym user1_interface.source_table_synoynm for user1.source_table;2. B库:rn创建一个<em>dblink</em>使用user1_
oracle dblink 在存储过程里执行效率很慢,单独执行很快的问题解决
现象描述:关于<em>oracle</em> Dblink 查询的效率慢的<em>问题</em>,起初直接使用select * from tab@<em>dblink</em> 查询效率很快,由于想<em>通过</em>定时任务执行,因此写了存储过程rninsert into tab select * from tab@<em>dblink</em> where inftime>btime and inftimernrn空闲等待事件SQL*Net message from <em>dblink</em>
ORACLE使用DBLINK连接远程数据库
database link概述rndatabase link是定义一个数据库到另一个数据库的路径的对象,databasern link允许你查询<em>远程</em>表及执行<em>远程</em>程序。rnrnrndatabase link分类rn1.PrivaternOwner:创建databasern link的user拥有该database linkrn描述:在本地数据库的特定的schema下建立的databasern lin
【Oracle】DBLINK执行DDL,添加删除表
新技能GET,记录一下:n之前<em>通过</em>DBLINK对<em>远程</em>数据库执行DDL语句一直有<em>问题</em>,从网上看到的一些方法需要自己编写存储过程,经测试在11R2环境中无法使用,后来也就没有继续研究。n今天看到了Oracle自己提供的PACKAGE可以实现这个功能,使用的是dbms_utility.EXEC_DDL_STATEMENT:n测试过程很简单如下:nJP@ora11> create database
DBLINK引起的SQL性能问题
DBLINK引起的SQL性能<em>问题</em>
Oracle11g 单表获取速度快但连表时速度慢甚至卡顿
1 查看索引是否设置2 使用pl/sql 查看使用什么连接3 如果数据量过大可选择hash join4编写连表查询语句并按F5或者打开 file&amp;gt;&amp;gt;new&amp;gt;&amp;gt;explain plan window&amp;gt;&amp;gt;在里面编写sql语句&amp;gt;&amp;gt;点击运行,打开text可看到如下lan hash value: 615168685 ----------------------...
postgresql通过dblink操作远程数据库
安装nn找到postgresql安装目录,在postgresql-10.3/contrib/<em>dblink</em>下,运行nnnmake &amp;amp;&amp;amp; make installnn注:可以使用find命令找到<em>dblink</em>文件夹nnnfind .* -name <em>dblink</em>nn安装完毕之后,目录下多了<em>dblink</em>.so和<em>dblink</em>.onn在数据库中运行nnncreate extension dbli...
dblink实现存储过程远程调用
步骤 :rn1. --创建DBLinkrn create public database link testLinkrn connect to l2108 identified by websmsrn using '(DESCRIPTION =rn (ADDRESS_LIST =rn (ADDRESS = (PROTOCOL = TCP)(HOST = 10.137.17.98)(PORT = ...
expdp利用dblink远程数据导出到本地
环境背景:n本地 :IP:127.0.0.1 端口:1521 实例:orcl 用户:local_sys/123n<em>远程</em>服务器:IP:192.168.0.100 端口:1521 实例:orcl 用户:server_sys/123n目标:将服务器上server_user1用户导出到本地nnnn n nnn n nnn n nnnnn1.登录本地数据库nC:\U
SqlServer数据通过DBLink 同步到Oracle小例 (不积跬步,无以至千里)
/*n--获取刷卡机中刷卡数据,需要先建服务链接,如下:nexec sp_addlinkedserver 'Ehrtest','','SQLOLEDB','192.168.8.210' nexec sp_addlinkedsrvlogin 'Ehrtest','false',null,'sa','digitalhr' ngo n以代理运行维护计划时,计划中调用SQL格式库名.d
oracle 创建dblink访问远程数据库
首先,在本地数据库tnsnames.ora文件中配置要访问的目标数据库信息.可以直接修改tnsnames.ora文件,或者使用客户端向导界面配置。n一般将下面的HOST和SERVICE_NAME改为要访问的目标数据库信息就可以了。ntest_link2n =n  (DESCRIPTION =n    (ADDRESS_LIST =n      (ADDRESS = (PROTOCOL
oracle使用dblink高速复制表数据的动态存储过程
多年前写的复制目标数据库指定表的数据到本<em>地表</em>。 程序丢了可惜,分享下。 执行存储过程,<em>通过</em>指定目标数据库登录信息,动态生成<em>dblink</em>,打开游标,按批次插入本地指定表中,每批次1万条数据。同步记录和日志信息写在自动生成的sync_log表中。同步完成后自动删除动态生成的存储过程、<em>dblink</em>。 本程序不同步blob和clob字段,玩<em>oracle</em>的人都懂,用sql同步此类数据,速度上不去,此类数据应该要用导出导入的方式提升速度。 具体请参阅程序,可根据自已需要进行修改。 参数说明: CREATE OR REPLACE PROCEDURE syncTable( ip IN VARCHAR2,--目标数据库ip地址 port IN NUMBER,--目标数据库端口号 sid varchar2,--目标数据库SID ora_user VARCHAR2,--目标数据库登录用户名 passwd VARCHAR2,--目标数据库登录密码 src_table_name IN VARCHAR2,--目标数据需要同步的表(数据源) dest_table_name IN VARCHAR2,--把目标表同步到本地库的表名,无则创建与目标表一致的表名 errMsg OUT VARCHAR2)--输出执行信息。 程序同步到执行结束时的目标表所有数据,不按任何字段排序,只判断并记录row_number()到日志表,中断后重新执行可继续同步,如果目标表频繁读写,不保证数据完全正常,故最好是目标表不变动情况下执行同步。 有<em>问题</em>请私信或留言。
dblink实现一个数据库用户只能查另一个库用户的数据
--a库:10.2.0.5 csdb n--b库:11.2.0.4 orcl nn用a库的用户查询b库用户的数据na库tnsnames.ora文件中添加对方内容 nORCL = n (DESCRIPTION = n (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.101)(PORT = 1521)) n (CONNECT_DAT
ORACLE使用DBLINK导入导出数据
场景:rnORACLE数据库A:172.18.169.81:1521/orclrnORACLE数据库B:127.0.0.1:1521/orclrn要将数据库A的所有数据导入到数据库B。rn由于数据量极大,所以直接exp太慢,不能用rn懒,不愿意写expdp,所以使用DBLINK进行导入。rn过程:rn1、在数据库B新建对应的用户、表空间rn2、使用新建好的用户登录plsql,在左边列表栏里面找到d
oracle 通过dbLink 获取blob 字段解决方案
n-------创建虚拟表rncreate global temporary table temp(rn id int,rn X blobrn) rnon commit delete rows;rn2. 执行 将数据保存在本地临时表中rninsert into temp select id,msg from msg_bak;rnrn 3.查询本地blob 类型数据rns...
Oracle dblink远程调用存储过程、函数、序列
一、<em>dblink</em><em>远程</em>调用procedure: rn1、写了一个调用远端sayHello存储过程的存储过程,远端sayHello存储过程如下:rn rn-- 远端 sayHello 定义如下:rncreate or replace procedure sayHello(currentTime out varchar) isrnbeginrn select 'Hello World' into c...
Oracle_2:oracle 数据 查询,迁移之dblink的建立
一、测试条件、环境1、测试条件:1号服务器(目标数据库) nSID:orcl 1 用户名:user1 密码:pwd1 IP地址:192.168.4.1 n3号服务器(源数据库) nSID:orcl3 用户名:user3 密码:pwd3 IP地址:192.168.4.3要将1号服务器orcl1数据库中访问到3号服务器的o
postgresql实现跨数据库查询,采用dblink的形式
select * from <em>dblink</em>('host=1.1.1.1 dbname=test user=a password=a','select * from m') as t(id int,name varchar)rnhost:要查询的表所在数据库所在的服务器IP,dbname:数据库名字,user:用户名,password:密码rnselectrn * from m查询的表rnrn查询的字
关于通过dblink和expdp进行数据库备份的操作步骤
关于<em>通过</em><em>dblink</em>和expdp进行数据库备份的操作步骤关于<em>通过</em><em>dblink</em>和expdp进行数据库备份的操作步骤n文档约定n文档目的n操作步骤n参考资料文档约定主服务器数据库为源数据库,客户端服务器数据库为目的数据库,源数据库IP地址为:192.168.117.216文档目的实现在异机上<em>通过</em>expdp的方式进行ORACLE数据库的数据导出。操作步骤第一步: n在目的数据库中的tnsnames.ora
Oracle ORA-02025 SQL语句的所有表均必须在远程数据库中
我们知道ORACLE可以<em>通过</em>透明网关可以连接其他数据库,透明网关的介绍与搭建请参考:nhttp://blog.csdn.net/shiyu1157758655/article/details/74939952n今天想<em>通过</em><em>oracle</em>的<em>dblink</em>将<em>oracle</em> 里的某张表的数据导入到sql server 中,报了如下的错误nSQL> insert into userdoc_tmp@test(
ORACLE如何使用DBLINK连接另一个数据库(两数据库关联操作)
一. 实现结果:在一个数据库中某个用户下编写一个存储过程,在存储过程中使用DBLINK连接另一个数据库,从此数据库中的一个用户下取数,然后插入当前的数据库中的一个表中。nn nn二. 实现方法步骤:nn    1. 创建存储过程nn    2. 在存储过程中先创建database linknn    3. 创建成功nn    4. 从另一个数据库取出数据插入到当前数据库中nn    5. 任务完成...
Oracle通过DBlink连接MySQL
依赖包:mysql-connector-odbc-5.3.6-1.el6.x86_64.rpm和unixODBC,前置条件:Oracle和MySQL字符集需要一致,否则Oracle查询出来的数据是乱码。
大量使用oracle DBLINK影响本地数据库的正常操作(过渡使用)
在业务系统中,需要使用另外一个数据库的部分表数据,项目开发人员选择使用<em>dblink</em>然后创建同义词来使用。在后期系统使用量变大以后,发现很多本地操作会出现操作失败的<em>问题</em>。经过日志分析,感到很莫名奇妙。因为我操作本地数据库。这个地方的调用方法完全没有涉及系统的<em>dblink</em>,但是报错却是系统创建的<em>dblink</em>的错误(并且验证了下,操作本地数据库语句完全没有<em>问题</em>):rnBad SQL grammar [n
Oracle dblink 同义词 表赋权
<em>dblink</em>(Database Link)数据库链接顾名思义就是数据库的链接,就像电话线一样,是一个通道,当我们要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中就必须要创建<em>远程</em>数据库的<em>dblink</em>,<em>通过</em><em>dblink</em>本地数据库可以像访问本地数据库一样访问<em>远程</em>数据库表中的数据。n 以下技术解决的<em>问题</em>:用户开发人员A需要对生产数据库B进行操作,但是没有权限,所以需要数据库B管理员给用户A开权限,但为了安全,会把A需要的表权限,赋给C用户。然后在A与C之间建立<em>dblink</em>,并创建同义词,在数据库
Oracle创建到sqlserver的dblink中的一个巨坑
<em>oracle</em>创建<em>dblink</em>连接sqlserver,ORA-01017: invalid username/password; logon denied和ORA-02063错误,那极有可能是在执行创建语句的时候,忘了把用户名或者密码用双引号引起来
oracle连接db2数据库的步骤
<em>oracle</em>连接db2数据的步骤,比较详细,有图片说明
DBLinks 新增加字段后,提示标识符无效
rn     在用DBlinks同步数据中,原表和目标表增加了字段,出现:Body 1193 36 PL/SQL: ORA-00904: &quot;SOURCE&quot;.&quot;****&quot;: 标识符无效,一直困扰着,今天突然感觉是缓存<em>问题</em>,在目标库执行:ALTER SYSTEM FLUSH SHARED_POOL;rn再重新编译,哈哈,提示成功了。不过此方式在生产环境谨慎使用,必定会增加共享sql的解析。请在非高峰期...
Oracle DBLink 理解、授权、创建、删除、访问表授权
DBLINK创建:80机器对应用户apps创建
oracle数据库用DBLINK连接另一个数据库
方法一:nncreate database link xxx----即将建立的<em>dblink</em>名nnconnect to 数据库用户名  identified by &quot;密码&quot;nusing '(DESCRIPTION =n(ADDRESS_LIST =n(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xx-----数据库IP)(PORT = 1521))n)...
利用DB-link实现快速跨库表数据复制
DB-Link实现数据跨库复制。
impdp导入dblink很慢
今天在导入全库的元数据时特别慢,几个小时了都没执行完。nn按理说元数据是很小的,不至于几个小时都执行不完nn nn查找impdp hang在什么地方nnSQL&amp;gt; set lines 200 pages 200 feedback off newpage nonenSQL&amp;gt;  select * from dba_datapump_jobs;nnOWNER_NAME             ...
oracle通过dblink连接mysql配置详解(全Windows下)
关于<em>oracle</em><em>通过</em><em>dblink</em>连接mysql,经过了两周的空闲时间研究学习,终于配置好了,真是不容易啊,仔细想想的话,其实也没花多长时间,就是刚开始走了一段弯路,所以把这次的经验分享出来,让大家少走些弯路,OK,闲话不多说了,开始配置旅程: n一:环境检查: n数据库:安装<em>oracle</em>11g 64位,安装mysql 5.6 64位,Windows7系统;安装数据源驱动(ODBC) 64位,Wind
Oracle跨服务器访问使用dblink
当要夸服务器访问数据库时,我们可以使用<em>dblink</em>建立连接服务器间的通道,本地创建了<em>远程</em>数据库的<em>dblink</em>后,访问<em>远程</em>服务器的库就像操作一个库一样了。grant create  database link to 用户名    //给本机用户分配创建link权限 CREATE DATABASE LINK linkname         CONNECT TO  <em>远程</em>服务器用户名 IDENTIFIE...
dblink】使用dblink访问远程数据库并实现java代码的增删改查
在开发中遇到的<em>问题</em>,若你想在本地数据库访问<em>远程</em>数据库,<em>oracle</em>在进行跨库访问时,可以<em>通过</em>创建<em>dblink</em>实现。nncreate database link link名称 nconnect to 对方数据库用户名 identified by 对方数据库用户密码nusing '对方数据库ip:端口/实例名'; nneg:nnn create database link atsn connect...
ORACLE数据库中通过DBLINK查询时含有CLOB字段的情况
在多库交互时,常常用到DBLINK(DBLINK有时会引起SCN传播<em>问题</em>),但当要查询的表里含有CLOB字段时,我们无法直接进行查询,需要做处理才能查询出数据rnrnrn查询一般分为两种情况rn一是对数据实时性要求不严格:这种情况可以<em>通过</em>CREATE TABLE TAB_NAME AS SELECT * FROM TAB@DBLINK的方法把远端数据过度到本地进行操作rn一是对数据实时性要求比较高
oracle如何创建dblink和视图
如果需要创建全局 DBLink,则需要先确定用户有创建 <em>dblink</em> 的权限:select * from user_sys_privs where privilege like upper('%DATABASE LINK%');rnrn如果没有,则需要使用 sysdba 角色给用户赋权:grant create public database link to dbusername;rnrn如果创建
使用数据泵导出dblink
最近碰到数据泵导出导入数据的时候,发现<em>dblink</em>并没有导入进来。nn今天测试了下,发现了原因。nn当<em>dblink</em>,是使用create database link 这样的语句创建的时候,按照schema导出导入,就可以导出导入<em>dblink</em>了。nn如果创建<em>dblink</em>,使用的是create public database的时候,这样按照schema导出导入,是没有<em>dblink</em>的,因为此时查看dbli...
oracle db_link的使用说明
原创文章,转载请标明出处
如何执行远程链接服务器的存储过程,并插入到本地表
1. 先在<em>远程</em>服务器上创建一个最简单的存储过程:rnIF OBJECT_ID('Proc_Test') IS NOT NULLnDROP PROC Proc_TestnGOnCREATE PROC Proc_TestnASnBEGINn SET NOCOUNT ONn SELECT 1 AS r;nENDrn2. 在本地机上创建<em>远程</em>服务器的链接服务器, rn3. 执行下面的语句:rnDECLARE
oracle中一个表update慢的优化
案例简述rnrnrn数据库:10.129.130.179rnrn用户:tlstat_newbg_studiornrn语句:rnrnrnrnrnrnrnrnrnrnrnrnrnrnrnrnrn rnrnrnrnrnrnrnupdate DY_USER_ANALYSIS_LEVEL set LOGON_CNT_GUID = LOGON_CNT_GUID + to_number(0) where ST
两个oracle数据库中表数据同步(DBLINK+TRIGGER)
数据库数据同步方式有很多,使用Logminer、GoldenGate、DataGurd等基于<em>oracle</em>日志方式的同步,或者使用<em>dblink</em>+trigger进行同步,也可以<em>通过</em>代码的job方式进行同步数据。 n最近在做数据采集的一个系统,里面需要对少量表数据进行实时同步,考虑到实时性以及成本,这里采用了<em>dblink</em>+trigger。nn我们这里对database_A和database_B进行操作,
Oracle BLOB大字段 通过DBLINK 传输
Oracle BLOB大字段 <em>通过</em>DBLINK 传输nn有源和目标库nn现在需要将源中包含BLOB字段的表数据传输到目标表中nn源表a(BLOL字段)---》目标表b(BLOB字段)nn在源建立对目标的DBLINK:a_bDBLINKnninsert into a@a_bDBLINKnnselect * from b;n...
关于一个oracle下遇到的insert into ...select... 效率很慢的问题
n先描述一下<em>问题</em>,前提条件是select语句本身执行并不慢,我一个select查询,单独执行的话大约7秒左右,可能算是有些复杂,然后前面加上insert into去执行的话,刚开始的时候还好,后面越来越慢,最后遥遥无期看不到头,<em>问题</em>比较困扰,网上搜到一个帖子,地址:http://www.itpub.net/thread-1599007-1-1.html,在第二页中有位用户提到在select中增加/...
解决oracle创建表或插入数据执行速度很慢的问题
由于需要创建的表或创建的数据量很大,若使用SQL window执行语句会导致<em>oracle</em>执行的速度很慢可使用command window执行语句,将要执行的语句copy到页面之后就会一行一行的速度执行...
同步不同服务器数据库数据
建立<em>dblink</em>访问<em>远程</em>服务器数据库, 建立同义词转换<em>远程</em>表访问 建立存储过程将同义词表同步到本<em>地表</em> 建立job定时执行存储过程同步数据 代码已测试<em>通过</em>
用mysql实现类似于oracle dblink的功能
用mysql实现类似于<em>oracle</em> <em>dblink</em>的功能 rn[size=x-small]首先看看有没有federated 引擎。[/size]rnmysql&gt; show engines;rn+------------+----------+----------------------------------------------------------------+rn| Engine ...
oracle通过odbc建立dblink访问sqlserver数据库
<em>oracle</em><em>通过</em>odbc方式,连接到sqlserver数据库。比透明网关方式更加简单
Navicat for oracle 连接远程数据库
1.第一次在这写笔记,以前写在博客园里2.首先安装好<em>oracle</em> ,我安装的是<em>oracle</em> 11g,下载和安装的步骤相当详细请看这里:https://jingyan.baidu.com/article/363872eccfb9266e4aa16f5d.html(安装包百度云链接:https://pan.baidu.com/s/17SyQ9zDYZrUaMsFEbdU82w 密码:vbr4)安装完后...
通过Oracle的透明网关和dblink直接取sqlserver表中的数据
<em>通过</em>Oracle的透明网关和<em>dblink</em>直接取sqlserver表中的数据
oracle数据库A,B表关联更新问题
有表A如下n| id | code | name |n|-1-| 1001 | 张三 |n|-2-| 1002 | 李四 |n|-3-| 1003 | 李四 |n有表B如下n| id | code | name |n|-1-| 1001 | 王五 |n|-2-| 1002 | 王二麻子 |n|-3-| 1003 | 王三麻子 |nn...
使用触发器使用DBLINK同步带有CLOB字段的表的DML
-- 本机vincent用户创建clob测试表nconn vincent/vincentncreate table emp_clob(empno NUMBER(4), ename CLOB);nalter table emp_clob add constraint PK_emp_clob primary key (empno);ncreate table emp_clob_copy(empno N...
多表联合查询速度巨慢解决办法之一
在实际工作当中,有一次碰到了多表联合查询但两分钟才出来结果,但A表和B表都不算大,A表只有五万多条数据,B表只有两万条数据,从中查出符合条件的数据并不需耗时那么长.最后经组长指导才发现A表没有建立索引,最后用CREATE INDEX  索引名 ON 表名(字段名) 为A表添加了一个普通索引之后才解决了<em>问题</em>.rn        对索引的解释,我觉得rn                http://w
通过dblink读取另一个数据库的数据插入到本地表速度慢!!!!!!!!!!!
<em>通过</em><em>dblink</em>读取另一个数据库的数据插入到本<em>地表</em>,<em>速度慢</em>,而且每次只是读取一条数据插入本地,然后commitrn插入的数据有个字段是blob类型,每一条记录大概20krn网络正常rnsql语句大概如下:rninsert into local_table rnselect * from remote_table@<em>dblink</em> where key_column=valuern
利用DBLink+JOB实现两个Oracle数据库之间的数据同步
针对上一篇文章的部分内容这里<em>通过</em>DBLink+JOB实现两个Oracle数据库之间的数据同步,我自己测试了两个数据库之间的一个表同步没有<em>问题</em>,下面写个详细例子供大家参考;网络爬虫太多,加个地址:http://blog.csdn.net/qq_22260641rn第一步:建立DBLinkrn  两个数据库,源数据库test中的表数据同步到目标数据库scott的同一个表(表不相同也可以,不影响的),在
Oracle数据库中触发器包含dblink
Oracle数据库中触发器包含<em>dblink</em>rn1、 基本概念rna) 触发器trigger:触发器在数据库里以独立的对象存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是由一个事件来启动运行。即触发器是当某个事件发生时自动地隐式运行。rnb) Dblink:rn2、 测试准备rna) 准备数据库test1,test2rnb) 两边都创建scott用户,都创建表tes
oracle dblink 创建和使用
n--需求:本地A访问<em>远程</em>B。n--说明:<em>dblink</em>test:<em>dblink</em>名称,lixu:本地A用户,T_Btable:<em>远程</em>B库表。nn--1.A:先确定用户是否有创建DBLink的权限:n select * from user_sys_privs where privilege like upper('%DATABASE LINK%'); n--2.A:如果没有,则需要使用 sysdba 角色...
update表关联更新字段
Oracle 用一个表字段<em>更新</em>另一个表字段三种方法rn1. update (select .....) set column1 = column2;rnrnupdate (select iy.company_name company_name1, cc.company_name_jc company_name2rn from income_year_item iy , city_co...
配置oracle11g通过dblink+透明网关访问GBase
rn一、在<em>oracle</em>的服务器上安装GBase的ODBC驱动;rn二、执行odbcinst –jrn [<em>oracle</em>@t3 admin]$ odbcinst -jrnunixODBC 2.2.14rnDRIVERS............: /etc/odbcinst.inirnSYSTEM DATA SOURCES: /etc/odbc.inirnFILE DATA SOURCES..: /et...
Oracle创建DBLink和同义词
---DBLink创建语法及使用:rn语法:rncreate public database link <em>dblink</em>name connect to username identified by passwordrn   using '(DESCRIPTION =rn(ADDRESS_LIST =rn(ADDRESS = (PROTOCOL = TCP)(HOST = database_ip)(PO
DBLink 的使用查询
<em>通过</em>database link 方式 Oracle数据库可以跨不同的数据库实例访问。有时候,我们需要在视图、函数、存储过程中使用<em>dblink</em>。要获取这些信息可以<em>通过</em>下述方式实现。nnnselect d.* from dba_dependencies d where d.referenced_link_name='XXX'nnn其中 xxx 为定义的<em>dblink</em>名称。nn<em>通过</em>上述脚本,能够获取所有数...
克隆创建PDB--(2)远程克隆创建PDB
[<em>oracle</em>@12cr2 dbs]$ export ORACLE_SID=newcdbn[<em>oracle</em>@12cr2 dbs]$ sqlplus / as sysdbanSQL*Plus: Release 12.2.0.1.0 Production on Sun Jun 4 15:26:43 2017nCopyright (c) 1982, 2016, Oracle. All rights re
怎么知道有dblink连接到当前数据库
select * from v$session where program like 'ORACLE%' and v$session.SQL_ADDRESS='00'nn机器名肯定是<em>oracle</em>服务器的名字n
ORA-22992:无法使用远程表选择的LOB定位符
nORA-22992:无法使用<em>远程</em>表选择的LOB定位符rn rn仔细检查一下,<em>远程</em>的表只有一个是clob字段,但是我暂时,没有用到这个字段,rn在查询的时候,把这个字段去掉,把用到的字段进行统计,不再报这样的错误,rn rn rn------------如何所有的字段都需要,rn rn网上的解决办法,一并搬来rn rn解决办法:   先创建一个临时表,然后把<em>远程</em>的含CLOB字段的表导入到临时表中,...
Oracle利用job和dblink高级数据库同步技术
利用<em>oracle</em> job可以定期让<em>oracle</em>执行数据库的差异同步。与<em>dblink</em>搭配使用,效果更好。
oracle关联表的批量更新操作
批量<em>更新</em>,普通的方法有update,而对于大数据的批量<em>更新</em>显然是不行的,下面介绍一种批量<em>更新</em>的方法,而且执行效率很高。rn首先建两个表,TEST1和TEST2,TEST1比TEST2少了一个字段,要求将TEST1的字段数据<em>更新</em>到TEST2中去,此时TEST1的数据量超过6万行,<em>通过</em>以下代码,不到一秒钟,就完成了<em>更新</em>操作rnrnrnMERGE INTO TEST2 t2rnUSING       
oracle的触发器结合dblink做跨库操作
1.首先建立<em>dblink</em>:nnn-- 创建<em>dblink</em>(testlink为<em>dblink</em>的名称,xt是用户名,第二个xt是密码,using后是ip+端口+实例)ncreate public database link testlink connect to xt identified by &quot;xt&quot; USING '127.0.0.1:1521/orcl”'nn2.建立触发器:nnn-- 创建user...
oracle DBLINK创建完成后怎么实现从A表插入到B表
话不多说直接上功能:n&nbsp;&nbsp;&nbsp;&nbsp; insert into tableB @DBLINK名称 select * from tableA; commit;nn
问题记录1:ORA-22992 无法使用从远程表选择的LOB定位符
本地11g数据库查询<em>远程</em>12c数据库,创建DBLINK。nn由于12c库为mysql库转换,查询表名需要加引号查询。nnSELECT * FROM &quot;jc_acquisition&quot;@test<em>dblink</em>;nn查询表jc_acquisition时报错:ORA-22992 无法使用从<em>远程</em>表选择的LOB定位符,原因是jc_acquisition表中含有CLOB字段。nn解决办法:nn创建临时表:crea...
Oracle使用DBLINK实现跨库查询
Platform: nOS:Windows Server 2012 R2 64bit nOracle:11.2 64bit引子: n在对医院的审计中,因为该医院使用了两个HIS系统,涉及到两个Oracle数据库,在使用中就要用到跨库查询(主操作数据库为rmyytj,跨库查询数据库为rmyyzl)。先将语句写下来,再分析:DROP PUBLIC DATABASE LINK <em>dblink</em>_rm
ORACLE 使用关联更新做update 优化方案
ORACLE 使用<em>关联</em><em>更新</em>做update 优化方案n**nORACLE数据库关系<em>更新</em>/修改 优化方案n–感谢您在百忙之中,来捧场,笔者有什么不对的地方,感谢您的纠正。n我们可以做个实验去验证一下n这里我们使用的是scott测试账户,方便教学。ncreate table t1 as select * from dba_objects;ncreate table t2 as select * from...
oracle不同数据库表数据同步
物化视图,不同数据库表数据同步
Oracle快照及dblink使用(两台服务器数据同步)
--名词说明:n源——被同步的数据库;n目的——要同步到的数据库;n一、创建<em>dblink</em>:n1、在目的数据库上,创建<em>dblink</em>:n-- Drop existing database link ndrop database link DLINKMYTEST;n-- Create database link ncreate database link DLINKMYTESTn conne
通过dblink的ORA-00904标识符无效
n坑爹啊rn在跨机器实例<em>通过</em><em>dblink</em>访问不同的数据库时(A--B两个不同物理机器上的实例),如果后期<em>更新</em>了B机器上的表的字段(修改字段名称或者增加字段), 那么在A实例下存储过程中引用新增的这些字段就可能出现ora-00904错误,解决办法:在B实例下把表rename成新名称,再rename成原来的名称,然后在A实例下重新编译过程,OK!rn rn太坑爹了n...
DBLINK触发的SCN异常
突然接到通知,说维护的系统存在SCN耗尽的风险,具体原因待定,很大的可能性时DBLINK使用导致的。经查维护系统当天最大SCN减去当前系统SCN为16天rn鉴于使用的数据库版本为LINUX,ORACLE 10.2.0.4,最后确认打PSU补丁来解决<em>问题</em>,打完补丁后的数据库版本为10.2.0.4.12rnrnrnDBLINK传染SCN的机制如下:rn假如有A和B两台机器,A上有DBLINK连接到B,
跨库的DB_LINK导致的数据库锁故障的处理
2pc涉及到2个阶段,3个操作n阶段一:“准备提交”,事务协调者向所有操作者发起prepare,所有参与者回答yes/no。n阶段二:“正式提交”,如果所有参与者都回答yes,则向所有参与者发起commit;否则,向所有参与者发起rollback。n因此,要实现2pc,所有参与者都得实现3个操作:prepare/commit/rollback。n2pc的实现n关于2pc,对应的实现层面,也就是XA...
ORACLE的dblink突然连不上的问题分析
昨天中午10点,突然接到总经理电话,说有客户反应LIS和PACS无法收费了,必须马上给处理掉。但是客户端PC却能连接到<em>oracle</em>服务器,没有使用<em>dblink</em>的业务运行都正常。LIS和PACS计费由于要连接不同的数据库,使用了<em>dblink</em>。经过初步排查发现<em>dblink</em>无法连接了,重新创建<em>dblink</em>也不好用。突然想到,会不会是服务器的所有端口号被占满了呢?因为以前有家客户的服务器就是由于所有端口号
oracle 批量更新(临时表的方式)
背景:n之前<em>通过</em>导入的方式在T1表中插入了数据(大于3000条),但后来发现有一列的值信息不全(有的是空着的),于是想将信息补全。nnn先建立一张临时表T2,<em>通过</em><em>oracle</em>的导入将新的数据迁入,然后nnnupdate T1 set T1.列A= (select T2.列A from T2 where T1.列B = T2.列B and rownum
oracle 新建 dblink 及 释放用户锁
create public database link <em>dblink</em>_protest2 connect to protest2 identified by protest using '(DESCRIPTION=( ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.30.1.10)(PORT=1521)) ) (CONNECT_DATA=(SERVICE_N...
oracle 使用dblink方式 连接远程数据库,内有详细描述,亲测可以
<em>oracle</em> 使用<em>dblink</em>方式 连接<em>远程</em>数据库,内有详细描述,亲测可以
exists ,not exists改写成in 和 not in 时,要注意null值的情况,会影响结果
---not  existsrnrnselect count(distinct a.pos_mer_id)rnfrom tests arnwhere a.stat_flag='C' and not existsrn(select 1 fromrnhfods.tests brnwhere b.stat_flag='N' and b.pos_mer_id=a.pos_mer_id);rnrn改写成no
Oracle创建DBlink和Sysnonyms(同义词,表映射)的方法及常见问题处理
Oracle创建DBlink的方法及常见<em>问题</em>处理
oracle创建DBlink语句
create database link 创建的<em>dblink</em>名字 n connect to 需要访问的用户 identified by “密码” n using ‘(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 需要访问的数据库IP地址)(PORT = 1521)))(CONNECT_DATA =(SERVICE_...
Oracle 官方给出声明——对于dblink产生影响
近期收到Oracle圈内分享得知rn在 Oracle 官方支持站点 MOS 上,最近发布了两篇告警文章rnrnOracle Databases Need to be Patched to a Minimum Patchset/PSU/RU level before April 2019 (Doc ID 2361478.1)Mandatory Patching Requirement for Dat
ORACLE跟新数据的性能提升(通过中间表)
rn--<em>更新</em>历程权力值--1.查询效率慢的update FW_WF_COURSE c set c.power =(select distinct from jbpm_taskinstance t1 where t1.id_ = c.task_id)where c.power is null;rn rn--查询效率快create table FW_WF_COU_BP asselect * from ...
解决oracle数据链连sqlserver日期格式乱码,select字段需加转移符
<em>oracle</em>连sqlserver参考透明网关,网上很多,主要说下日期乱码<em>问题</em>。nn<em>通过</em>直接查发现日期字段create_time为乱码,其他中文正常。nnnn主要是因为日期格式<em>问题</em>,读过来的数据转以下格式就可以了,注意select的字段要加引号。nnselect to_date(to_char(&quot;create_time&quot;,'yyyy/mm/dd hh24:mi:ss'),'yyyy/mm/dd hh...
多表批量(关联更新 oracle、mysql和sqlserver
[b]多表批量(<em>关联</em>)<em>更新</em> [/b] rn把表A中的name1字段设为对应的B表中的name1字段rnrn[b]1.<em>oracle</em>[/b]rnupdate test1 a set name=(select name from test2 b where a.no=b.no) where exists(select name from test2 b where a.no=b.no); --防止插入n...
最炫的10个html图片特效下载
最炫的10个html图片特效 相当的不错的哦! 相关下载链接:[url=//download.csdn.net/download/acujne/2009144?utm_source=bbsseo]//download.csdn.net/download/acujne/2009144?utm_source=bbsseo[/url]
思维导图计算机思维导图计算机下载
思维导图计算机思维导图计算机思维导图计算机思维导图计算机思维导图计算机 相关下载链接:[url=//download.csdn.net/download/lzxue2008/2407350?utm_source=bbsseo]//download.csdn.net/download/lzxue2008/2407350?utm_source=bbsseo[/url]
Flash.Builder.4.&.Flex.4 Flex4下载
Flash.Builder.4.&.Flex.4 Flex4 一本学习Flash Builder的及时雨 相关下载链接:[url=//download.csdn.net/download/Angel_He/2860501?utm_source=bbsseo]//download.csdn.net/download/Angel_He/2860501?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java全班本 人工智能远程培训
我们是很有底线的