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连接上oracle数据库后,可以用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这种方式,不会暴露密码,如下图

oracle怎么建立本地连接的更多相关文章

  1. navicat建立本地连接出错解决

    使用navicat建立本地连接时报错: 2.设置用户配置项 (1) 查看用户信息 select host,user,plugin,authentication_string from mysql.us ...

  2. [C#] 建立UDP连接、发送广播

    说明: 通过建立本地UdpClient与远程UdpClient进行通讯,亦可直接发送到其他已存在的远程端. 基本原理:构建一个本地的udpcSend实例,开启多线程进行监听,然后再发送广播. 案例有字 ...

  3. 【转】oracle建立本地数据库

    来到公司的这段时间,在项目的开发过程中一直连接的是远程的oracle数据库,现在开始轮到自己做毕业设计了,自己想采用Oracle数据库,就想建立本地的数据库. 当然了,首先是自己先装Oracle客户端 ...

  4. 关于Oracle本地连接出现与监听有关的问题的解决方法探讨

    关于Oracle本地连接出现与监听有关的问题的解决方法探讨 监听的作用: 用于应用桌面即用户与数据库服务器建立连接的媒介,客户端发送连接请求,监听识别请求并建立客户端与服务器的连接后,监听的使命并完成 ...

  5. 本地不安装oracle,PLsql远程连接

    Oracle的Instant client工具包可以很好地解决本地不安装oracle,PLsql远程连接. 1.首先到Oracle网站下载Instant Client : http://www.ora ...

  6. 域名可以解析(ping域名可以获取正确ip),服务器本地telnet 域名+端口 无法连接,通过建立本地虚拟域名指定的方法解决该问题

    环境: 服务器A,网管已为A开通外网ip,且设置有映射域名:假如内网ip为172.16.2.6.外网ip为123.123.123.123.域名为test.sstest.com 现象: 服务器A,tel ...

  7. 本地连接远程Oracle数据库

    由于项目开发测试,需要在本地连接远程的Oracle数据库 之前搭过环境,但是重装了系统,现在又重新装一遍 软件安装 连接远程Oracle需要两个软件: 一个Oracle客户端,instantclien ...

  8. 解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题

    解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题通过在CMD下用lsnrctl status 查看出的问题:发现BLOCKEDORACLE启动步骤:s ...

  9. maven建立本地仓库

    maven 建立本地仓库 博客分类: java,maven,nexus   前面我讲到为什么要使用 Maven, Maven 的安装,以及 如何与 IDE 集成等,前面的介绍可以认为是一个 Hello ...

随机推荐

  1. 【转】常见Java面试题 – 第一部分:非可变性(Immutability)和对象引用(Object reference)

    ImportNew注: 本文是ImportNew编译整理的Java面试题系列文章之一.请看此系列相关面试题.你可以从这里查看全部的Java面试系列. 一些比较核心的Java问题经常会用来考验面试者的J ...

  2. MAVEN配置及Spring Tool Suite的Maven配置

    1.下载Maven http://maven.apache.org/download.cgi 如图点击下载即可 2.Maven配置 2.1配置本地仓库 创建目录maven-repository如图所示 ...

  3. php进程 热更新

    后台启动的php守护进程时 文件内include的代码变更并未生效,需要重启进程,我们可以更新代码后手动重启.但是有些对失效要求较高.那就需要自动重启了.下面整理出三个方案用以实现. 1  inoti ...

  4. GB国标编码的程序出现乱码

  5. Spring Boot2 系列教程(二十) | SpringBoot 是如何实现日志的?

    微信公众号:一个优秀的废人.如有问题,请后台留言,反正我也不会听. 前言 休息日闲着无聊看了下 SpringBoot 中的日志实现,把我的理解跟大家说下. 门面模式 说到日志框架不得不说门面模式.门面 ...

  6. 通过VS2019使用Web部署发布.net core程序

    服务器:Windows Server2012R2 服务器已安装好IIS 需要启用Web Management Service  与 Web部署代理服务 服务器默认是没有Web部署代理服务的  需要安装 ...

  7. 测试必备之Java知识(四)—— 线程相关

    线程相关 Java多线程实现方式 继承Thread,实现Runnable接口,实现Callable接口(能抛异常且有返回值,不常用) 为什么有了继承Thread方式还要有Runnable接口方式 实现 ...

  8. 对标Eureka的AP一致性,Nacos如何实现Raft算法

    一.快速了解Raft算法 Raft 适用于一个管理日志一致性的协议,相比于 Paxos 协议 Raft 更易于理解和去实现它. 为了提高理解性,Raft 将一致性算法分为了几个部分,包括领导选取(le ...

  9. 150行代码打造.net core生产力工具,你值得拥有

    你是否在初学 .net core时,被依赖注入所折磨? 你是否在开发过程中,为了注入依赖而不停的在Startup中增加注入代码,而感到麻烦? 你是否考虑过或寻找过能轻松实现自动注入的组件? 如果有,那 ...

  10. 关于neo4j初入门(3)

    这一章主要是函数的部分 UPPER 它需要一个字符串作为输入并转换为大写字母. UPPER (<input-string>)<input-string>可以是来自Neo4J数据 ...