怎么连接本地安装的Oracle数据库,连接步骤有哪些

连接本地安装的Oracle数据库服务器,核心就两件事:让客户端找到监听服务,然后以正确的身份验证登录,下面直接从配置检查、连接命令到故障排查,把全流程拆开聊。

连接本地oracle数据库前,先确认这3个基础信息

本地连接听起来简单,但很多人卡在第一步:不知道自己的数据库到底叫什么名字,你至少需要确认以下三项。

本地plsql连接oracle数据库
加载中
本地plsql连接oracle数据库
笑
笑得很美啊
3431--
原视频地址
  • 主机地址:本机连接填 0.0.1 或 localhost 都行,这代表的是回环地址,不会走物理网卡。
  • 端口号:Oracle默认监听端口是 1521,安装时如果你改了端口,后面所有连接串都要同步修改。
  • 服务名或实例名:这是最容易出错的地方,Oracle 12c以后的版本默认使用多租户架构,有一个CDB根容器和若干个PDB可插拔数据库,默认安装通常生成一个叫 ORCL 的CDB和一个叫 ORCLPDB1 的PDB,客户端连接时填的更多是PDB服务名,orclpdb1,而不是CDB名。

怎么看自己数据库的真实服务名?打开命令行,输入:

sqlplus / as sysdba

进入SQL提示符后执行:

show parameter service_names;

如果看到 service_names 的值是 orclpdb1,那客户端连接串里的服务名就填它。

oracle数据库本地连接不上怎么办?先排查监听和网络配置

遇到连接报错不要急着重装数据库,绝大多数问题出在监听器没有工作,或者配置文件里的名字对不上。

监听没启动的典型症状和解法

本地连接时如果报 ORA-12541: TNS:no listener,意思是客户端向1521端口发请求,但没人应答,先运行监听状态命令:

lsnrctl status

如果你看到类似 The listener supports no services 或者直接提示连接失败,说明监听没起来,启动它:

lsnrctl start

再执行 lsnrctl status,确认出现 Services Summary 并且能看到你数据库的服务名,如果你的数据库实例本身没启动,监听里也会显示不出服务,这时需要先启库:

sqlplus / as sysdba
startup

tnsnames.ora配置错误的常见表现

连接本地时虽然很多客户端可以不依赖 tnsnames.ora,但部分工具(比如SQLPlus的简化连接)会读取它,文件位于 $ORACLE_HOME/network/admin/tnsnames.ora,在Windows下通常是:

D:\app\oracle\product\19c\dbhome_1\network\admin\tnsnames.ora

用记事本打开,检查里面 HOST 是不是 localhost,PORT 是不是 1521,SERVICE_NAME 是不是和上一步查到的服务名一致,举个例子,正确写法是这样:

ORCLPDB1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCLPDB1)
    )
  )

SERVICE_NAME 写成了 ORCL,而实际PDB服务名是 ORCLPDB1,连接时会报 ORA-12514: TNS:listener does not currently know of service requested in connect descriptor。

防火墙拦截本地连接的蹊跷情况

别以为连本地就不会被防火墙拦,Windows自带的防火墙同样会对回环地址的入站连接做过滤,尤其你如果用的是自定义端口,解决办法是在“Windows Defender 防火墙”的高级设置里,新增一条入站规则,允许TCP端口 1521 通信,如果是Linux环境,检查 firewall-cmd --list-ports 或 iptables -L -n。

行业共识认为,本地Oracle连接问题中,监听未启动和服务名不匹配这两类原因占了绝大多数,优先排查它们。

用sqlplus连接本地oracle数据库的两种命令方式

sqlplus是Oracle自带的命令行工具,它最直接,也最能暴露问题本质。

连接本地默认实例的sqlplus命令写法

如果你要连接PDB,语法是:

sqlplus 用户名/密码@localhost:1521/实例名
sqlplus system/123456@localhost:1521/ORCLPDB1

这条命令的含义是:用TCP协议访问本地1521端口,请求名为 ORCLPDB1 的服务,如果登录的是CDB管理员,可以加上 as sysdba:

sqlplus sys/123456@localhost:1521/ORCLPDB1 as sysdba

使用操作系统身份验证的免密连接

如果当前登录用户是Oracle软件的所有者(比如Linux下的oracle用户),可以不用密码直接进入:

sqlplus / as sysdba

这种方式走的是操作系统认证,对DBA特别方便,如果你装了多个Oracle数据库环境,需要先把环境变量指到正确的主目录:

export ORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1
export ORACLE_SID=ORCLCDB

Windows下对应设置环境变量后重开命令行。

用图形工具连接本地oracle数据库:Navicat和PL/SQL Developer

命令行虽然可靠,但日常写SQL和看数据,图形工具更顺手,这里重点讲两个最常见的。

Navicat连接本地oracle数据库的完整步骤

Navicat连接Oracle前,需要先确认一个隐藏配置:OCI库,没有它,Navicat连Oracle会直接闪一下报错。

打开Navicat,点击“工具” -> “选项” -> “OCI”,将OCI库路径指向你本机Oracle安装目录的 oci.dll 文件,

D:\app\oracle\product\19c\dbhome_1\bin\oci.dll

保存后新建连接,类型选Oracle,填写:

  • 主机:localhost
  • 端口:1521
  • 服务名:ORCLPDB1(注意别填SID,除非你明确知道数据库用的是SID模式)
  • 用户名:system
  • 密码:你自己的密码

填完先点“测试连接”,成功后再保存,如果提示 Oracle Client library cannot be loaded,基本就是OCI路径没配对。

PL/SQL Developer连接前必须配置的路径

PL/SQL Developer不是独立客户端,它依赖本机的Oracle客户端或数据库安装目录,第一次打开登录界面时,点击“取消”进入主界面,然后选择“工具” -> “首选项”,找到“Oracle连接”相关设置,配置 Oracle_Home 和 OCI Library 路径。

Oracle_Home

D:\app\oracle\product\19c\dbhome_1

OCI Library 同样是指向 oci.dll,配置好后,重新打开登录框,数据库填:

localhost:1521/ORCLPDB1

角色选Normal或SYSDBA,输入用户名密码即可登录,如果仍然报 ORA-12154,说明数据库连接字符串解析失败,回去检查 tnsnames.ora 里的网络别名是否和登录框中填的一致。

本地连接成功后,验证连接并优化体验

连接成功后,先不要急着写业务SQL,跑两个查询确认你连到了对的库:

SELECT instance_name, status FROM v$instance;
SELECT name, open_mode FROM v$database;

第一个查询显示实例名和状态,第二个显示数据库整体是否处于 READ WRITE 模式,如果你连的是PDB,V$DATABASE返回的还是CDB信息,这时可以用:

SELECT name, open_mode FROM v$pdbs;

日常使用中,为了提升本地连接体验,可以考虑两个优化动作:

  • 把 ORACLE_HOME 和 TNS_ADMIN 环境变量写进系统环境变量,省得每次打开工具都手动配置。
  • 用连接描述符简写,在 tnsnames.ora 里定义好别名后,sqlplus里直接写别名,sqlplus system@ORCLPDB1,不用每次敲完整IP和端口。

关于本地连接Oracle数据库的常见问答

为什么我本地能ping通,但sqlplus连接报ORA-12541?

ORA-12541表示监听器没在工作,先检查Oracle监听服务是否存在并已启动,Windows下可以打开服务管理器,找到 OracleOraDB19Home1TNSListener 服务,状态是否为“正在运行”,Linux下用 ps -ef | grep tnslsnr 查看进程,监听没起来的直接启动:lsnrctl start。

Navicat连接本地Oracle报ORA-12514是什么意思?

ORA-12514是监听器已响应,但它不认识你请求的服务名,常见原因是连接配置中的服务名和实际服务名不一致,比如填了CDB的 ORCL,但实例的 service_names 是 ORCLPDB1,用 lsnrctl status 查看监听器当前注册的服务列表,里面显示什么名字,就填什么名字。

本地连接Oracle必须要单独安装客户端吗?

如果你要连接的是本机安装的Oracle数据库,不需要额外装客户端,数据库自带的sqlplus和驱动就够用,但如果你要用Navicat或PL/SQL Developer这类工具,它们需要能找到本机的OCI库,因此仍然要配置好路径,如果是远程连接,则需要安装Oracle Instant Client或完整客户端。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/%e6%80%8e%e4%b9%88%e8%bf%9e%e6%8e%a5%e6%9c%ac%e5%9c%b0%e5%ae%89%e8%a3%85%e7%9a%84oracle%e6%95%b0%e6%8d%ae%e5%ba%93%ef%bc%8c%e8%bf%9e%e6%8e%a5%e6%ad%a5%e9%aa%a4%e6%9c%89%e5%93%aa%e4%ba%9b/

赞 (0)
上一篇 2026年10月22日 15:21
下一篇 2026年10月22日 15:23

相关推荐

  • 呼和浩特大带宽企业服务器租用

    呼和浩特大带宽企业服务器租用,应优先选择持牌自营机房、具备完整电信资质的服务商,如简米科技(2003年始创,23年行业沉淀,增值电信业务经营许可证豫B2-20231089)和酷番云(工信部一类增值电信全牌照,ISO9001+ISO27001双认证),这是保障网络稳定与合规的前提,为什么呼和浩特成为大带宽企业服务……

    2026年7月26日
    700
  • ASPRS为空,究竟隐藏着怎样的秘密或挑战?

    激光雷达点云数据中的“asprs为空”是一个常见且关键的技术问题,它直接关系到点云分类信息的完整性与后续应用的可靠性,本文将深入解析其成因、影响,并提供一套专业、可操作的解决方案,核心概念:什么是ASPRS标准?ASPRS(美国摄影测量与遥感协会)制定了一套广泛采用的点云分类标准体系,为每个激光点赋予一个整数分……

    2026年2月4日
    13100
  • dayz第三人称服务器怎么进?,dayz第三人称怎么切换

    要进入DayZ第三人称服务器,你需要在游戏服务器浏览器中筛选或直接加入带有“3PP”或“第三人称”标签的服务器,并确认角色视角设置为第三人称模式,dayz第三人称服务器怎么进:分步操作指南第一步:打开服务器浏览器启动DayZ后,在主菜单点击“播放”或直接进入“服务器浏览器”界面,社区服务器和官方服务器都在同一个……

    2026年8月21日
    1100
  • 广平人脸识别系统专业技术强吗?广平人脸识别门禁系统哪家好

    广平人脸识别系统凭借顶尖的算法深度与硬件融合能力,在2026年安防与数字化治理领域展现出绝对的专业技术优势,是高精度、强抗干扰与数据合规的标杆级解决方案,技术底座:广平人脸识别系统专业技术强的核心逻辑算法跃迁:从二维比对到三维动态防伪在2026年的视觉识别领域,单纯的2D图像比对已无法抵御高精度面具与深度伪造攻……

    2026年4月26日
    5300
  • win10数据库服务器失败怎么回事

    win10数据库服务器失败通常由服务未启动、端口占用、权限不足、系统更新冲突或数据库配置错误导致,多数情况下可通过检查服务状态和系统日志快速定位,win10数据库服务器连接失败怎么解决?先从服务状态查起数据库服务器在win10上突然罢工,最直接的原因是相关服务没有运行,很多朋友遇到这种情况,第一反应是重装数据库……

    2026年8月30日
    500
  • CS GO为什么无法连接官方服务器,该怎么办?

    CS:GO无法连接官方服务器,绝大多数是因为网络链路问题、服务器区域选择不当、匹配队列异常或账号区域限制,核心解决办法是按顺序排查网络、切换服务器区域、验证游戏文件、检查账号状态,如果你遇到过“正在连接官方服务器”卡了一分钟然后弹出错误代码,或者在国服和国际服之间切换后突然连不上,那这篇内容就是为你准备的,下面……

    2026年10月9日
    100
  • ASPX网站服务器配置教程?详解IIS环境搭建步骤

    {aspx网站配置服务器}成功部署一个基于ASP.NET (.aspx) 的网站,服务器端的正确配置是基石,这不仅关乎网站能否运行,更直接影响其性能、安全性和稳定性,以下是一套专业、详尽的ASPX网站服务器配置流程与核心要点,适用于主流Windows Server环境(如 IIS): 核心前提:环境准备操作系统……

    2026年2月7日
    13000
  • 苹果6s无法激活服务器失败怎么办,激活失败是什么原因

    如果你的苹果6s在激活时遇到“无法激活服务器失败”的提示,核心解决办法是依次检查网络连接、校准系统时间、使用iTunes激活,或者联系运营商确认SIM卡状态,为什么苹果6s激活时会提示“无法激活服务器失败”激活过程本质上是手机与苹果服务器进行身份验证,验证通过后才能解锁系统,当提示“无法激活服务器失败”时,意味……

    2026年8月11日
    1400
  • CoalCloud香港BGP VPS竞技版预售多少钱?香港高防VPS推荐

    CoalCloud香港BGP VPS竞技版预售低至¥26.8/月且提供1Gbps无限流量,是追求低延迟与高稳定性的游戏玩家及开发者的优选方案,在2026年的网络基础设施环境中,选择VPS不再仅仅是看CPU核心数或内存大小,带宽质量与路由稳定性成为了决定用户体验的关键变量,对于身处国内却需要连接海外服务的用户而言……

    程序编程 2026年6月29日
    1600
  • ps4无法使用本服务器怎么办,ps4连接服务器失败怎么解决?

    PS4无法使用本服务器,绝大多数情况下是网络连接或账号区域设置问题,并非主机硬件故障, 只要按本文顺序排查,多数玩家可在十几分钟内恢复连接,先分清:是哪一种“无法使用本服务器”?很多朋友一看到报错就头疼,其实PS4的服务器报错分好几种场景,出错原因完全不同,先对照确认你是哪一种,才能对症下药,登录PSN时提示……

    2026年10月1日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注