【Oracle】创建公共数据连接

需求描述

两个oracle数据库,想从B数据库创建视图脚本访问A数据库相关表的数据,该怎么访问呢?

解决方法

在Oracle数据库中,创建公共数据库链接(Public Database Link)可以允许数据库中的任何用户访问远程数据库。

在B数据库中(一定是在B数据库中)执行创建连接的脚本,使用以下语法创建公共数据库链接:

CREATE PUBLIC DATABASE LINK remote_db_link
CONNECT TO remote_username IDENTIFIED BY "remote_password"
USING 'remote_tns_name';

参数说明:

  • remote_db_link:数据库链接名称(自定义,如 sales_db)。

  • remote_username:远程数据库的用户名(即A库的用户名)。

  • remote_password:远程用户的密码(即A库的密码)。

  • remote_tns_name:远程数据库的 TNS 连接描述符(配置在 tnsnames.ora 中)。

 或者直接指定连接信息(无需TNS),如下:

CREATE PUBLIC DATABASE LINK remote_db_link
CONNECT TO remote_username IDENTIFIED BY "remote_password"
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=remote_host)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=remote_service_name)))';

参数说明:

  • HOST:远程数据库的ip(即A库的数据库ip)。

  • PORT:远程数据库的端口号(即A库的端口号,数据库默认端口为1521,具体看项目的配置)。

  • SERVER_NAME:远程数据库的服务名(即A库的服务名,默认是orcl,具体看项目的配置)。

具体配置实例如下:

CREATE PUBLIC DATABASE LINK link_name_suibianqi
CONNECT TO my_test IDENTIFIED BY "my123456"
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.168.xx.xx)(PORT=51521))(CONNECT_DATA=(SERVICE_NAME=orcl)))';

注意:要有创建连接的权限(CREATE PUBLIC DATABASE LINK)或者使用系统管理员权限。

这样就可以在B数据库中访问A数据库的内容,访问方式为:

select * from a_table@link_name_suibianqi

其中:a_table为A库的数据表;

开发代码

参考文章

https://yr7ywq.smartapps.baidu.com/?content_id=6e4c521&word=Oracle%2B%E5%88%9B%E5%BB%BA%E5%85%AC%E5%85%B1%E6%95%B0%E6%8D%AE%E8%BF%9E%E6%8E%A5&_chatQuery=Oracle%20%E5%88%9B%E5%BB%BA%E5%85%AC%E5%85%B1%E6%95%B0%E6%8D%AE%E8%BF%9E%E6%8E%A5&searchid=16684570166696473139&_chatParams=%7B%22chat_no_login%22%3Atrue%2C%22agent_id%22%3A%22c816%22%2C%22content_build_id%22%3A%226e4c521%22%2C%22from%22%3A%22q2c%22%2C%22token%22%3A%22uutwWciT6qN1bai7ShhgJhD6QMg9RAQYyU8LacbDbjEeuBMmyNf%2FFqvS3HQ2frFADtVRT8gDFD0GiZN%2FmNx0k%2FzAnm3tGwuntlZhiEflriY2E78G3ObnVQWdrvqoZxmTKbT7%22%7D&_swebScene=3711000610000000

https://blog.csdn.net/weixin_45833902/article/details/143301216 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/news/906847.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

时序数据库IoTDB的分片与负载均衡策略深入解析

一、引言 随着数据库服务的业务负载增加,扩展服务资源成为必然需求。扩展方式主要分为纵向扩展和横向扩展。纵向扩展通过增加单台机器的能力(如内存、硬盘、处理器)来实现,但受限于单台机器的硬件能力。而横向扩展则通过增加更多…

计算机网络期末复习资料

我用夸克网盘分享了「计算机网络」, 链接:https://pan.quark.cn/s/8aac2f0b840e 计算机网络试题库 1单项选择题 1.1以下属于物理层的设备是 ( A) A. 中继器 B.以太网交换机 C. 桥 D. 网关 1.2在以太网中,是根据 (B) 地址来区分…

【IEEE 2025】低光增强KANT(使用KAN代替MLP)----论文详解与代码解析

【IEEE 2025】本文参考论文Enhancing Low-Light Images with Kolmogorov–Arnold Networks in Transformer Attention 虽然不是顶刊,但是有值得学习的地方 论文地址:arxiv 源码地址:github 文章目录 Part1 --- 论文精读Part2 --- 代码详解形状…

naivechain:简易区块链实现

naivechain:简易区块链实现 naivechain A naive and simple implementation of blockchains. 项目地址: https://gitcode.com/gh_mirrors/nai/naivechain 项目介绍 naivechain 是一个简单且易于理解的区块链实现项目。它使用 Go 语言编写,以极简…

Zabbix开源监控的全面详解!

一、zabbix的基本概述 zabbix,这款企业级监控软件,能全方位监控各类网络参数,确保企业服务架构的安全稳定运行。它提供了灵活多样的告警机制,帮助运维人员迅速发现并解决问题。此外,zabbix还具备分布式监控功能&#…

软考软件评测师——软件工程之开发模型与方法

目录 一、核心概念 二、主流模型详解 (一)经典瀑布模型 (二)螺旋演进模型 (三)增量交付模型 (四)原型验证模型 (五)敏捷开发实践 三、模型选择指南 四…

50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | Blurry Loading (毛玻璃加载)

📅 我们继续 50 个小项目挑战!—— Blurry Loading 组件 仓库地址:https://github.com/SunACong/50-vue-projects 项目预览地址:https://50-vue-projects.vercel.app/ ✨ 组件目标 实现一个加载进度条,随着加载进度的…

WPF性能优化之延迟加载(解决页面卡顿问题)

文章目录 前言一. 基础知识回顾二. 问题分析三. 解决方案1. 新建一个名为DeferredContentHost的控件。2. 在DeferredContentHost控件中定义一个名为Content的object类型的依赖属性,用于承载要加载的子控件。3. 在DeferredContentHost控件中定义一个名为Skeleton的ob…

VLM-MPC:自动驾驶中模型预测控制器增强视觉-语言模型

《VLM-MPC: Model Predictive Controller Augmented Vision Language Model for Autonomous Driving》2024年8月发表,来自威斯康星大学的论文。 受视觉语言模型(VLM)的紧急推理能力及其提高自动驾驶系统可理解性的潜力的启发,本文…

推荐系统里真的存在“反馈循环”吗?

推荐系统里真的存在“反馈循环”吗? 许多人说,推荐算法不过是把用户早已存在的兴趣挖掘出来,你本来就爱听流行歌、买潮牌玩具,系统只是在合适的时间把它们端到你面前,再怎么迭代,算法也改变不了人的天性&a…

代码混淆技术的还原案例

案例一 eval 混淆 特征 : 反常的 eval 连接了一堆数据 练习网站 https://scrape.center/ spa9 这个案例 基本的还原方法 但是这个代码还是非常的模糊不好看 优化一下 : 当然还有更快捷的方法 : 好用的 js混淆还原的 web &#xf…

鸿蒙Flutter实战:22-混合开发详解-2-Har包模式引入

以 Har 包的方式加载到 HarmonyOS 工程 创建工作 创建一个根目录 mkdir ohos_flutter_module_demo这个目录用于存放 flutter 项目和鸿蒙项目。 创建 Flutter 模块 首先创建一个 Flutter 模块,我们选择与 ohos_app 项目同级目录 flutter create --templatemodu…

Go核心特性与并发编程

Go核心特性与并发编程 1. 结构体与方法(扩展) 高级结构体特性 // 嵌套结构体与匿名字段 type Employee struct {Person // 匿名嵌入Department stringsalary float64 // 私有字段 }// 构造函数模式 func NewPerson(name string, age int) *Pe…

Java 函数式接口(Functional Interface)

一、理论说明 1. 函数式接口的定义 Java 函数式接口是一种特殊的接口,它只包含一个抽象方法(Single Abstract Method, SAM),但可以包含多个默认方法或静态方法。函数式接口是 Java 8 引入 Lambda 表达式的基础,通过函…

【python代码】一些小实验

目录 1. 测试Resnet50 ONNX模型的推理速度 1. 测试Resnet50 ONNX模型的推理速度 ############################### # 导出resnet50 模型 # 测试onnx模型推理 cpu 和 GPU 的对比 ###############################import time import numpy as np import onnxruntime as ort im…

5.Java 面向对象编程入门:类与对象的创建和使用​

在现实生活中,我们常常会接触到各种各样的对象,比如一辆汽车、一个学生、一部手机等。这些对象都具有各自的属性和行为。例如,汽车有颜色、品牌、型号等属性,还有启动、加速、刹车等行为;学生有姓名、年龄、学号等属性…

从开发者角度看数据库架构进化史:JDBC - 中间件 - TiDB

作者: Lucien-卢西恩 原文来源: https://tidb.net/blog/e7034d1b Java 应用开发技术发展历程 在业务开发早期,用 Java 借助 JDBC 进行数据库操作,虽能实现基本交互,但需手动管理连接、编写大量 SQL 及处理结果集&a…

工业智能网关建立烤漆设备故障预警及远程诊断系统

一、项目背景 烤漆房是汽车、机械、家具等工业领域广泛应用的设备,主要用于产品的表面涂装。传统的烤漆房控制柜采用本地控制方式,操作人员需在现场进行参数设置和设备控制,且存在设备智能化程度低、数据孤岛、设备维护成本高以及依靠传统人…

故障率预测:基于LSTM的GPU集群硬件健康监测系统(附Prometheus监控模板)

一、GPU集群健康监测的挑战与价值 在大规模深度学习训练场景下,GPU集群的硬件故障率显著高于传统计算设备。根据2023年MLCommons统计,配备8卡A100的服务器平均故障间隔时间(MTBF)仅为1426小时,其中显存故障占比达38%&…

Vue 样式不一致问题全面分析与解决方案

文章目录 1. 问题概述1.1 问题表现1.2 问题影响 2. 根本原因分析2.1 Vue 的渲染机制与样式加载时机2.2 Scoped CSS 的工作原理2.3 CSS 模块化与作用域隔离2.4 样式加载顺序问题2.5 热重载(HMR)与样式更新 3. 解决方案3.1 确保样式加载顺序3.1.1 预加载关键 CSS3.1.2 控制全局样…