前一阵领导安排了一个任务:定时将集团数据库某表的数据同步至我们公司服务器的数据库,感觉比写增删改查SQL有趣,特意记录下来,希望能帮到有类似需求的小伙伴,如有错误也希望各位不吝指教

环境描述:

  集团数据库:Oracle 11g

  部门数据库:Oracle 11g

  使用的软件:PLSQL Developer 13

  网络环境:两个数据库处于同一局域网

先讲一下完成此任务需要用到哪些技术:

  Database link:使用户可以通过一个数据库访问到另外一个远程数据库

  DBMS_Job:使ORACLE数据库定期执行特定的任务

  Procedure:用来完成特定的数据操作(比如修改、插入、删除数据等,个人感觉类似于Java中Util类里的方法)

一:创建Database links

  1.在PLSQL Developer对象栏找到Database links右键选择新建

  

  2.打开后的界面

  

  ①:连接的名称,可以自定义,建议命名规范为:connect_数据库名称

  ②:要连接的数据库的用户名,密码,以及地址,地址格式为IP:端口/数据库名称

  ③:保存

  3.测试Database link是否创建成功

  SQL格式:   Select * From 目标数据库的表名称@Database link名称

  假设对方有一张表为:AD_User,我们创建的Database link名称问connect_Server

  则测试SQL如下: Select * From AD_User@connect_Server

二:创建Procedure

  1.在对象栏找到Procedures右键选择新建

  

  2.打开界面如下

  

  第一行Name,输入要创建的Procedure的名称

   第二行Parameters参数,视情况而定,无特殊要求的话可以直接删掉(光标定位到箭头所示位置,按)

   最后点击确 定按钮

  

   3.点击确定后的界面:

  

  在begin下编写需要执行的SQL即可,添加,删除等对数据库进行更改的SQL语句记得要加commit

  如图

  

  4.编写完成后点击PLSQL任务栏的执行按钮即可

  

三:创建DBMS_Job

  1.在对象栏找到DBMS_Jobs右键选择新建

  

  2.打开后界面如下

  

  ①  What值:填写Procedure名称,多个以逗号(,)分割 最后分号(;)结尾

   ②  下一个日期:第一次执行从什么时间开始,立即开始为sysdate

   ③  间隔: 每隔多长时间执行一次

每秒钟执行:   sysdate+1/(24*60*60)

每分钟执行:    sysdate+1/(24*60)

   也可以设置每天,每周,每月等等,具体SQL可以百度,此处不做赘述

  3.配置完成后界面

  

  最后点击应用即可

四:演示

通过PLSQL创建Database link,DBMS_Job,Procedure,实现Oracle跨库传输数据的更多相关文章

  1. Oracle数据库如何创建DATABASE LINK?

    Oracle数据库如何创建DATABASE LINK? 2011-08-09 14:54 taowei20061122 CSDN博客  http://blog.csdn.net/taowei20061 ...

  2. oracle 创建database Link

    当两台不同的数据库服务器想要共享一部分数据的时候,可以通过创建database Link的方式实现. 创建全局database links ,则必须使用systm或sys用户,在database前加p ...

  3. Oracle创建database link(dblink)和同义词(synonym)

    同一个数据库不同用户之间建立dblink和synonym 1.建立dblink 实现在A用户下通过dblink访问B用户下的数据库表,需要在A用户下创建访问B库的dblink连接 --创建远程连接db ...

  4. Oracle创建Database Link

    一菜单方式: 打开plsql,点击[File]-[New]-[Database link],打开如下图所示窗口 填好各项信息后,点击[Apply]即可完成Database Link的创建. 二SQL方 ...

  5. 在oracle下如何创建database link全面总结

    物理上存放于网络的多个ORACLE数据库,逻辑上可以看成一个单一的大型数据库,用户可以通过网络对异地数据库中的数据进行存取,而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的,开发人员无需 ...

  6. Oracle_高级功能(3) synonym和database link

    一.同义词synonymconnect sys/123 as sysdba;select * from emp;ORA-00942: 表或视图不存在create synonym emp for sco ...

  7. Oracle11g密码区分大小写导致database link无法连接

    http://f.dataguru.cn/thread-128013-1-1.html Oracle11g的密码默认是区分大小写的,该特性通过初始化参数sec_case_sensitive_logon ...

  8. Oracle中创建DB LINK

    当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据.下面讲介绍如何在本地数 ...

  9. Oracle DATABASE LINK(DBLINK)创建

    数据库全局名称可以用以下命令查出: SELECT * FROM GLOBAL_NAME; 修改可以用以下语句来修改参数值: ALTER SYSTEM SET GLOBAL_NAME=TRUE/FALS ...

随机推荐

  1. 使用find命令查找大文件

    使用find命令查找大文件 find命令是Linux系统管理员工具库中最强大的工具之一.它允许您根据不同的标准(包括文件大小)搜索文件和目录. 例如,如果在当前工作目录中要搜索大小超过100MB的文件 ...

  2. 用于监视Linux上的内存使用情况的Bash脚本

    用于监视Linux上的内存使用情况的Bash脚本 2019-06-17 11:32:45作者:戴进稿源:云网牛站 在本文中,我们添加了两个shell脚本来监视Linux操作系统上的内存利用率,即用于监 ...

  3. Linux如何查看文件的创建、修改时间?

    Linux如何查看文件的创建.修改时间? 利用stat指令查看文件信息 三种时间的介绍 ATime --文件的最近访问时间 只要读取时间,ATime就会更新 MTime --文件的内容最近修改的时间 ...

  4. shell基础之EOF的用法

    一.EOF的用法 EOF是(END Of File)的缩写,表示自定义终止符.既然自定义,那么EOF就不是固定的,可以随意设置别名,在linux按ctrl-d 就代表EOF. EOF一般会配合cat能 ...

  5. 5.8-12 watch、which、whereis、locate、updatedb

    5.8 watch:监视命令执行情况 watch命令可以以全屏的方式动态显示命令或程序的执行情况.   -n    命令执行的间隔时间,默认为2s -d    高亮显示命令结果的变动之处 -t     ...

  6. centos7 的Linux下ip命令替换ifconfig命令的用法

    linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

  7. C++ STL 里为什么不维护一个 size 成员变量?

    回答: 为什么 GCC 里要把 list::size() 的复杂度搞成 O(N)? 一通搜索后终于看到有这样的讨论:关于 list::splice() 函数. list 是链表结构,它的优势就在于可以 ...

  8. [论文阅读笔记] Are Meta-Paths Necessary, Revisiting Heterogeneous Graph Embeddings

    [论文阅读笔记] Are Meta-Paths Necessary? Revisiting Heterogeneous Graph Embeddings 本文结构 解决问题 主要贡献 算法原理 参考文 ...

  9. Activiti中工作流的生命周期详细解析!一个BPMN流程示例带你认识项目中流程的生命周期

    BPMN 2.0介绍 业务流程模型注解(BusinessProcess Modeling Notation - BPMN)是业务流程模型的一种标准图形注解.这个标准是由对象管理组(Object Man ...

  10. 在gitlab网页上合并分支

    在gitlab网页上合并分支 使用gitlab网页将代码合并分 下面将dev分支代码合并至master 1.点击request merge 2.源分支为当前分支,目标分支默认为master,确认无误, ...