当前位置: 首页 > news >正文

Oracle 相关的工具使用 SQL Developer , sqlplus

Oracle 相关的工具使用 SQL Developer , sqlplus

一,Oracle SQL Developer 连接数据库

今天在连接sqldeveloper服务器时遇到了很多问题,但最终还是通过网上的博客解决了问题,我就在总结一下我的解决过程。

一.界面

首先,Oracle SQL Developer 的连接数据库 界面是这样的,:在这里插入图片描述 先填写连接名,用户名,以及口令;Oracle提供了system、scott等多种用户名,这里填写Scott(因为Scott中有几张用于测试的数据表),scott的初始口令为tiger,如果你已经修改,那就按修改的来。 在这里插入图片描述 这是最基本的设置,接下来的设置才是关键。

二.关键问题(设置SID,设置环境变量)

首先我们看到“连接类型”这一选项,这里我们只设置基本TNS两个选项。

一.设置SID

1.首先设置SID,默认填写的是‘xe’,这需要修改。如果不修改“xe”,并且在设置好环境变量的前提下点击“测试”,可能会显示IO异常:The Network Adapter could not establish the connection. 在这里插入图片描述 具体修改SID的方法为:

  1. 打开dos命令窗口1. 输入:sqlplus 进入Oracle1. 根据提示输入用户名system和相应口令(不能输入用户名scott,查不到)1. 输入:select instance_name from V$instance;1. 查看 SID,我的SID为orcl,如下图所示:在这里插入图片描述 输入SID,如下图: 在这里插入图片描述 二.设置TNS的“网络别名” 在这里插入图片描述 在没有设置环境变量之前,网络别名按钮是无效的。必须先设置环境变量。设置TNS_ADMIN环境变量指向tnsnames.ora文件所在目录。方法如下所示: 在这里插入图片描述
    在这里插入图片描述 新建环境变量后,再打开Oracle SQL Developer,查看“网络别名”,选择ORCL选项。 在这里插入图片描述 点击测试:成功。在这里插入图片描述

大功告成。

二,sqlplus连接oracle数据库

(连接本地oracle数据库和连接远程的oracle数据库)

虽然我们现在平时都是使用PLSQL Developer这个软件工具了,但是我们还是要了解sqlplus

想要成功连接本地的oracle数据库,首先要确保本地的这2个服务是处于启动状态

(重要)OracleOraDb11g_home1TNSListener  (oracle的监听器服务)(重要)OracleServiceORCL  (oracle的数据库服务)

如下图是连接本地oracle数据库

scott是oracle数据库中预设的一个用户,我们一般把scott用户的密码设置为tiger,原因是scott是一个人名,scott这个人是oracle公司的第一个员工,据说,据说scott这个人为oracle公司做出比较大贡献,所以oracle公司的老板为了纪念他,所以在oracle数据库中设置了scott这个用户,而scott这个家伙养了一直宠物猫,这只猫的名字就叫tiger(老外真有意思,居然把猫取名叫tiger,果然够霸气)

**注意:**如果scott用户被锁了,可以先解锁,解锁完后再修改一下scott的密码

开始–>运行–>cmd 输入 :sqlplus /nolog 回车 输入 :connect / as sysdba 回车 用户解锁 : alter user scott account unlock 回车 修改密码:alter user scott identified by tiger

如下图:

win键 + R再输入cmd

**输入 :sqlplus /nolog 回车输入 :connect / as sysdba 回车或者conn / as sysdba 回车用户解锁 : alter user system account unlock; 回车(注意:语句末尾要记得加;分号)**修改密码:alter user system identified by system;(注意:语句末尾要记得加;分号)还有一点要注意:修改密码时,密码的第一个字符不能是数字

conn是connect的缩写,两者效果完全一样

sqlplus连接上数据库后,可以用conn来切换/转换用户。connect和conn一样,只不过conn是connect的缩写

oracle数据库中有2个文件很重要

listener.ora tnsnames.ora

文件所在的目录是D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN(**注 意:**每个人的oracle数据库安装目录是不同的)

测试数据库是否连通,可以使用命令tnsping 主机字符串tnsping可以测试与远端数据库服务连接是否正常

比如:

tnsping orcl 注意这里的orcl表示主机字符串,就是****tnsnames.ora文件中的那个名字

tnsping LINK192.168.117.66  注意LINK192.168.117.66表示主机字符串,就是****tnsnames.ora文件中的那个名字

**连接远程数据库,有2种写法,**如下图

写法1

sqlplus 用户名/密码@192.168.117.66:1521/orcl 注意端口号后面跟的orcl表示数据库的服务名

写法2

sqlplus 用户名/密码@//192.168.117.66:1521/orcl 注意端口号后面跟的orcl表示数据库的服务名

还有一种写法,就是在@后面写主机字符串,如下图

接下来,我们说正事,使用sqlplus怎么连接本地oracle数据库和怎么连接远程oracle数据库

一,使用sqlplus怎么连接本地oracle数据库

先使用cmd命令进入dos窗口

**1.**sqlplus 用户名/密码  比如:sqlplus system/system

也可以sqlplus 用户名/密码@本机ip地址:端口号/本地数据库服务名  比如:sqlplus system/system@127.0.0.1:1521/orcl或者

sqlplus system/system@localhost:1521/orcl

注意:****这里的orcl数据库服务名

注意:sqlplus system/systemsqlplus system/system@127.0.0.1:1521/orclsqlplus system/system@localhost:1521/orcl是等价的,都是连接本地oracle数据库

注意如果是sys用户登录,在密码后面一定要加as sysdba子句,如下

**2.**sqlplus /nolog

sqlplus /nolog这句话的意思就是仅仅打开sqlplus这个软件界面,但是不登录数据库(nolog表示不进行登录,仅仅是进入sqlplus软件界面而已,就相当于仅仅打开QQ的登录界面,但是不登录QQ)

如果没有/nolog参数,sqlplus会提示你输入用户名和密码,如下图

3.****指定登录身份sqlplus 用户名/密码 as sysdba比如sqlplus system/system as sysdba

4.指定主机字符串,比如sqlplus scott/tiger@LINK192.168.117.66或者sqlplus scott/tiger@orcl

注意:如下图orcl和LINK192.168.117.66****是主机字符串的名字,该名字可以随便取,可以理解成这是一个别名,通过这个别名去连接真正的远程的数据库

比如sqlplus scott/tiger@LINK192.168.117.66

这里的orclLINK192.168.117.66其实可以理解成主机字符串,其实就是一个别名,通过这个别名去连接真正的IP,我这里的****orclLINK192.168.117.66设置的还是我本地127.0.0.1的地址,所以还是表示连接我本地的oracle数据库,如果想连接远程的oracle数据库,你们自己改一下ip地址和端口号和服务名,改成远程数据库的IP地址和远程数据库的端口号和远程数据库的服务名即可

二,使用sqlplus怎么连接远程oracle数据库

1.使用具体的ip地址

sqlplus 用户名/密码@远程数据库的IP地址:远程数据库的端口号/远程数据库的服务名

比如sqlplus system/system@127.0.0.1:1521/orcl或者sqlplus system/system@192.168.117.88:1521/orcl

因为我这里没有88的地址,肯定是连接不上,我这里只是演示一下,怎么通过具体的ip地址的方式来连接远程数据库

2.使用主机字符串

tnsnames.ora文件中,如果我们想多配置几个主机字符串,那我们可以手动拷贝一个主机字符串,然后手动改一下主机字符串的名字和IP地址和服务名和端口号,如下:标红的就是需要改动的,可以根据你自己的需要来改。

LINK192.168.117.88 =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.117.88)(PORT = 1521))     )     (CONNECT_DATA =       (SERVICE_NAME = orcl)     )   )

tnsnames.ora文件中的LINK192.168.117.88,类似于一个别名,通过这个别名,我们可以远程连接到192.168.117.88这台服务器上的oracle数据库

**注意:**LINK192.168.117.88是主机字符串的名字,该名字可以随便取,可以理解成这是一个别名,通过这个别名去连接真正的远程的数据库

使用主机字符串来连接远程数据库,如下图

因为我这里没有88的地址,肯定是连接不上,我这里只是演示一下,怎么通过主机字符串的方式来连接远程数据库

PLSQL Developer软件也是去读取tnsnames.ora这个文件,如下图

当然啦,我们也可以在文本框中手动输入具体的IP地址和端口号和数据库服务名**,如下图**

还有一点顺便说一下,如果我们使用sqlplus登录了数据库,但是我们想在不退出的情况下,切换用户或者是切换成其他远程的数据库?

切换成其他远程的数据库

使用conn

使用conn 用户名/密码@远程数据库IP:远程数据库端口号/远程数据库服务名

切换成其他用户

顺便说一下,sqlplus 用户名/密码这种方式连接数据库,会暴露密码,如下图

而直接写sqlplus这种方式,不会暴露密码,如下图

相关文章:

  • 解决键盘弹起上抬顶部的问题,绑定手势问题
  • 【专题总结】【一文解决】C++多继承下的构造函数执行顺序
  • 计算机毕业设计 服装生产信息管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • Python的异步编程
  • 【漏洞复现】金和OA C6 GeneralXmlhttpPage.aspx Sql注入漏洞
  • ARM Process state -- PSTATE
  • ubuntu卸载VSFTPD
  • IDEA使用技巧
  • 学习经验分享【38】YOLOv11解读——最新YOLO版本
  • 第十讲-显示控件QLabel
  • 【艾思科蓝】Vue.js组件开发实战:从零构建高效可复用组件
  • PasteForm最佳CRUD实践,实际案例PasteTemplate详解之3000问(三)
  • Qt开发第一讲
  • Unity 2D RPG Kit 学习笔记
  • 2024年合肥市职业院校技能大赛(中职组)赛 网络安任务书样题
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • [NodeJS] 关于Buffer
  • 【刷算法】从上往下打印二叉树
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • css布局,左右固定中间自适应实现
  • echarts的各种常用效果展示
  • hadoop集群管理系统搭建规划说明
  • If…else
  • javascript 哈希表
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • PHP的类修饰符与访问修饰符
  • Twitter赢在开放,三年创造奇迹
  • unity如何实现一个固定宽度的orthagraphic相机
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 理清楚Vue的结构
  • 聊聊directory traversal attack
  • 什么软件可以剪辑音乐?
  • 使用parted解决大于2T的磁盘分区
  • mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用 ...
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​卜东波研究员:高观点下的少儿计算思维
  • # 数仓建模:如何构建主题宽表模型?
  • $.ajax()
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (LeetCode 49)Anagrams
  • (二)Pytorch快速搭建神经网络模型实现气温预测回归(代码+详细注解)
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (一)基于IDEA的JAVA基础12
  • (一)为什么要选择C++
  • (游戏设计草稿) 《外卖员模拟器》 (3D 科幻 角色扮演 开放世界 AI VR)
  • (转) Face-Resources
  • .ai域名是什么后缀?
  • .gitignore文件_Git:.gitignore
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .NET Core中如何集成RabbitMQ
  • .net 发送邮件
  • .NET 分布式技术比较
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池