如何在本地搭建Oracle数据库实现公网环境下通过PLSQL工具进行远程访问

news2024/9/25 19:15:00

文章目录

  • 前言
  • 1. 数据库搭建
  • 2. 内网穿透
    • 2.1 安装cpolar内网穿透
    • 2.2 创建隧道映射
  • 3. 公网远程访问
  • 4. 配置固定TCP端口地址
    • 4.1 保留一个固定的公网TCP端口地址
    • 4.2 配置固定公网TCP端口地址
    • 4.3 测试使用固定TCP端口地址远程Oracle

前言

Oracle,是甲骨文公司的一款关系数据库管理系统,它在数据库领域一直处于领先地位。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。

本次教程我们来在本地搭建Oracle数据库,并通过[cpolar内网穿透](cpolar - 安全的内网穿透工具),将本地端口映射到公网,实现公网环境下通过PL/SQL工具进行远程连接访问。

1. 数据库搭建

安装oracle 数据库,进入官方下载,这里安装选着的是官方19C的版本

选择下载微软windows 64位下载

2023021411601

下载好后解压安装,安装过程中需要设置口令,口令就是登录时所需的密码

2023021411602

安装好后打开PL/SQL

2023021411603

打开后输入用户名:system,密码是上面设置的口令,出现sql表示登录成功

2023021411604

2. 内网穿透

目前该数据库只能在局域网内被访问,不过我们可以使用cpolar内网穿透工具,将内网的oracle数据库映射到公网上,实现远程访问。

2.1 安装cpolar内网穿透

cpolar官网:https://www.cpolar.com/

进入cpolar官网下载页面,下载windows安装包到本地然后解压一路默认安装即可

20230214113215

2.2 创建隧道映射

cpolar安装成功后,双击打开cpolar【或者在浏览器上访问本地9200端口 127.0.0.1:9200】,使用cpolar邮箱账号登录 web UI管理界面,如果还没有注册cpolar账号的话,点击免费注册,会跳到cpolar官网注册一个账号就可以了.

20230214113806

登录成功后,点击左侧仪表盘的隧道管理——创建隧道,创建一个tcp协议的隧道指向本地1521端口(oracle默认端口)

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:1521
  • 域名类型:免费选择随机域名
  • 地区:默认China top即可

点击创建

2023021411605

隧道创建成功后,点击左侧的状态——在线隧道列表,可以看到,刚刚创建的隧道已经有生成了相应的公网地址,将其复制下来

2023021411606

3. 公网远程访问

打开PLSQL图形化工具,输入tcp公网地址,输入用户名:systm 和密码,密码是创建数据库时设置的口令

2023021411607

连接后,执行查看系统表,出现数据表示成功

2023021411608·

4. 配置固定TCP端口地址

由于以上创建的隧道是随机地址隧道,地址会在24小时内变化,为了使连接更加稳定,需要固定tcp连接地址。

4.1 保留一个固定的公网TCP端口地址

登录cpolar官网,点击左侧的预留,选择保留的TCP地址,我们先来为远程Oracle保留一个固定端口地址。

  • 地区:选择China VIP
  • 描述:即备注,可自定义填写

点击保留

2023021411610

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

2023021411611

4.2 配置固定公网TCP端口地址

在浏览器上访问9200端口,http://127.0.0.1:9200/,登录cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到svn隧道,点击右侧的编辑

2023021411612

修改隧道信息,将保留成功的固定tcp地址配置到隧道中

  • 端口类型:修改为固定tcp端口
  • 预留的tcp地址:填写保留成功的地址

点击更新

2023021411613

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,找到我的世界隧道,可以看到公网地址已经更新成为了固定tcp地址。

2023021411614

4.3 测试使用固定TCP端口地址远程Oracle

再次打开PLsql,使用固定tcp地址连接

2023021411615

登录后执行查询系统表格select * from DBA_TABLES,出现数据表示连接成功

2023021411616

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

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

相关文章

C语言 字符函数汇总,模拟实现各字符函数(炒鸡详细)

目录 求字符串长度 strlen 示例 模拟实现strlen 长度不受限制的字符串函数 strcpy 示例 模拟实现strcpy strcat 模拟实现strcat strcmp 示例 模拟实现strcmp 长度受限制的字符串函数介绍 strncpy 示例 模拟实现strncpy strncat 示例 模拟实现strncat s…

hypermesh常用快捷键

#hypermesh常用快捷键

YOLOv8 加持 MobileNetv3,目标检测新篇章

🗝️YOLOv8实战宝典--星级指南:从入门到精通,您不可错过的技巧   -- 聚焦于YOLO的 最新版本, 对颈部网络改进、添加局部注意力、增加检测头部,实测涨点 💡 深入浅出YOLOv8:我的专业笔记与技术总结   -- YOLOv8轻松上手, 适用技术小白,文章代码齐全,仅需 …

【Dubbo】Dubbo负载均衡实现解析

📫作者简介:小明java问道之路,2022年度博客之星全国TOP3,专注于后端、中间件、计算机底层、架构设计演进与稳定性建设优化,文章内容兼具广度、深度、大厂技术方案,对待技术喜欢推理加验证,就职于…

Java多线程(3)

Java多线程(3) 深入剖析Java线程的生命周期,探秘JVM的线程状态! 线程的生命周期 Java 线程的生命周期主要包括五个阶段:新建、就绪、运行、阻塞和销毁。 **新建(New):**线程对象通过 new 关键字创建&…

Network(五)数值介绍与子网划分

一 数值 1 数值介绍 (1)带宽 在一定时间内通过某一网络连接的信息量 基本单位:比特每秒 (bit/s) 在计算机软件方面用字节每秒为单位 (2)存储量 计算机存储量可以用位和字节计量 (3)常用…

【Linux】-进程间通信-命名管道文件(没有关系的进程间进行通信),以及写一个日志模板

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …

【设计模式】聊聊模板模式

原理和实现 设计模式的原理和实现是比较简单的,难的是掌握具体的应用场景和解决什么问题。而模板模式是为来解决复用和拓展两个问题。 模板模式在一个方法中定义好一个算法框架,然后将某些步骤推迟到子类中实现,子类可以在不修改父类流程的时…

【C++】泛型编程 ⑦ ( 模板类常用用法 | 模板类声明 | 模板类调用 | 模板类作为函数参数 )

文章目录 一、类模板基础用法1、类模板声明定义2、类模板使用3、类模板做函数参数 二、完整代码示例1、代码示例2、执行结果 一、类模板基础用法 1、类模板声明定义 上一篇博客中 , 【C】泛型编程 ⑥ ( 类模板 | 类模板语法 | 代码示例 ) 讲解了模板类的基础语法 , 模板类声明如…

DrugMAP: molecular atlas and pharma-information of all drugs学习

DrugMAP:所有药物的分子图谱和制药信息 - PMC (nih.gov) DrugMAP: the molecular atlas and pharma-information of drugs (idrblab.net) 构建了一个描述药物分子图谱和药物信息的新数据库(DrugMAP)。它提供了>30 000种药物/候选药物的相…

安装Nginx时报:./configure: error: can not define uint32_t

安装版本:v.1.25.3 安装命令: ./configure --prefix/opt/nginx/1.25.3 && make && make install 执行命令后出现异常,如图: 解决方法: yum install -y kernel-headers kernel-devel gcc make

闭眼检测实现

引言 这段代码是一个实时眼睛状态监测程序,可以用于监测摄像头捕获的人脸图像中的眼睛状态,判断眼睛是否闭合。具体应用实现作用说明如下: 1. 实时监测眼睛状态 通过摄像头捕获的实时视频流,检测人脸关键点并计算眼睛的 EAR&a…

【C++】基础语法(中)

C基础语法(中) 文章目录 C基础语法(中)01数组一维数组数组初始化注意访问练习1练习2练习3普通做法:优化reverse函数练习4 多维数组清空数组memsetmemcpy 数组的部分由上到下,按规律 蛇形矩阵技巧 02 字符串…

UE 视差材质 学习笔记

视差材质节点: 第一个是高度图, Heightmap Channel就是高度图的灰色通道,在RGBA哪个上面,例如在R上就连接(1,0,0,0),G上就连接(0,1,0,0)逐次类推 去看看对比效果: 这个是有视差效果…

【心得】PHP文件包含基本利用个人笔记

本文可能比较凌乱,快速总结保证自己看得懂(真.个人笔记) 文件包含的本质:代码复用、并行开发、模块化、增加移植性 include和eval的区别: include和eval一样,都不是函数,都是语言结构&#xf…

2024全网最新最全的Pytest接口自动化测试框架教程

pytest编写的规则: 1、测试文件以test_开头(以_test结尾也可以) 2、测试类以Test开头,并且不能带有__init__方法 3、测试函数以test_开头 4、断言必须使用assert pytest.main([-s,-v]) :用来执行测试用例 -s 打印prin…

CnosDB有主复制演进历程

分布式存储系统的复杂性涉及数据容灾备份、一致性、高并发请求和大容量存储等问题。本文结合CnosDB在分布式环境下的演化历程,分享如何将分布式理论应用于实际生产,以及不同实现方式的优缺点和应用场景。 分布式系统架构模式 分布式存储系统下按照数据复…

Mybatis-Plus《学习笔记 22版尚硅谷 》——感谢【尚硅谷】官方文档

Mybatis-Plus《学习笔记 22版尚硅谷 》 一、MyBatis-Plus1.简介2.特性3.支持数据库4.框架结构5.官方地址 二、入门案例1.开发环境2.建库建表3.创建工程4.配置编码5.测试查询 三、增删改查1.BaseMapper<T>2.调用Mapper层实现CRUD2.1 插入2.2 删除a、根据ID删除数据b、根据…

MySQL InnoDB 引擎底层解析(一)

6. InnoDB 引擎底层解析 MySQL 对于我们来说还是一个黑盒&#xff0c;我们只负责使用客户端发送请求并等待服务器返回结果&#xff0c;表中的数据到底存到了哪里&#xff1f;以什么格式存放的&#xff1f;MySQL 是以什么方式来访问的这些数据&#xff1f;这些问题我们统统不知…