ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的SID等错误解决方法【连接本机】

2023-11-19

遇到这个问题首先考虑检查配置文件listener.ora和tnsnames.ora。

1  listener.ora文件

获取电脑主机名称:可通过dba登录sqlplus利用

select HOST_NAME from v$instance;

语句查询主机名

模板如下: 

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\app\Lenovo\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
	  (ENVS = "EXTPROC_DLLS=ONLY:D:\app\Lenovo\product\11.2.0\dbhome_1\BIN\OraClr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = LAPTOP-W)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = D:\app\Lenovo

2  tnsnames.ora文件

①这里的SID要和示例名一致

②这里的SERVICE_NAME要和服务端的名称一致

模板如下:

  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
	  (SID = orcl)
      (SERVICE_NAME = orcl)
    )
  )

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的SID等错误解决方法【连接本机】 的相关文章

  • Oracle Text 包含单字符索引搜索不起作用

    我有一个名为 index search 的简单表 创建如下 BEGIN ctx ddl create preference my pref BASIC WORDLIST ctx ddl set attribute my pref SUBST
  • Oracle 函数中的加密/解密密码

    由于以前设计不佳的结构 我必须使用的当前数据库将用户密码存储为文本 现在 我正在构建一个必须使用这些密码的前端部分 我当然不想发送未加密的密码 我的想法是编写一个 Oracle 函数来加密和解密文本密码 并在存储过程中使用这些函数来返回加密
  • postgresql 中的咨询锁超时

    我正在从 ORACLE 迁移 目前我正在尝试移植此呼叫 lkstat DBMS LOCK REQUEST lkhndl DBMS LOCK X MODE lktimeout true 这个功能 http docs oracle com cd
  • R 版本 4.0.0 上的 ROracle

    当尝试使用 ROracle 时 我收到以下错误消息 gt library ROracle Error package or namespace load failed for ROracle package ROracle was inst
  • 托管 ODP.NET 驱动程序未显示在“数据源”对话框中

    在我的计算机上安装托管 ODP NET 后 ODP NET 托管驱动程序没有出现在里面选择数据源Visual Studio 2013 Professional 中的对话框 它应该是这样的 这就是它在我的机器上的实际外观 我已按照 轻松驱动
  • 当我在 JDBC 应用程序中调用PreparedStatement.cancel() 时,它实际上会在 Oracle 数据库中杀死它吗?

    我有针对 Oracle 10g 数据库运行的 Java JDBC 应用程序 我设置了一个PreparedStatement来执行查询 然后调用ps executeQuery 来运行它 有时查询需要很长时间 我需要终止它 我有另一个线程访问该
  • 检查行中是否有单调递增的值

    我正在寻找一种方法来检查表中的值是否针对特定的行子集单调递增 该表包含列 id name meas date 和 value 对于具有相同名称的所有行 应按 meas date 对行进行排序 并且需要检查这些排序行的值列是否单调递增 因此
  • 如何使用 oracle SQL 执行线性插值?

    我正在尝试使用 Oracle 11g 开发中为 11 1 生产中为 11 2 进行数值分析 特别是对具有三列感兴趣的表进行线性插值 时间戳 deviceid 和值 值列保存来自设备 具有 ID deviceid 的数据 这些数据是在时间戳中
  • oracle查找两个表之间的差异

    我有两个结构相同的表 一个是临时的 另一个是产品的 每次都会加载整个数据集 有时该数据集会从先前的数据集中删除记录 我首先将数据集加载到临时表中 如果删除了任何记录 我也想从产品表中删除它们 那么如何找到prod中存在但temp中不存在的记
  • Oracle 触发器创建时出现编译错误,ORA-02289: 序列不存在

    当我使用 PowerDesigner 生成 SQL 并在 Oracle 中运行它时 它会抛出错误 警告 触发器创建时出现编译错误 create trigger tib material classify before insert on m
  • 如何通过ODBC检索Oracle数据库函数的结果?

    我在通过 ODBC 调用 Oracle 存储函数 而不是过程 时遇到问题 我的函数非常简单 它只是连接两个字符串 我可以通过以下方式调用它 rs c execute SELECT add str yogi bubu FROM dual fo
  • Oracle SQL 触发器上的变异表

    我正在尝试执行触发器 但出现变异表错误 SQL 代码是这样的 CREATE OR REPLACE TRIGGER CHK Apartado D BEFORE INSERT OR UPDATE ON CONTRACTS FOR EACH RO
  • PL/SQL 过程成功完成但没有显示任何内容

    我有以下过程代码 create or replace PROCEDURE Ventas cliente p DNI IN CHAR IS CURSOR c pedidos clientes IS SELECT FROM Pedidos ve
  • 尝试在 Oracle 11.2.0.2.0(64 位)中获取连接时出现 java.lang.ArithmeticException

    我目前正在 Oracle 中使用 Java 存储过程 并且在尝试在 Java 代码中获取连接时看到一些奇怪的行为 我的Java被打包成jar文件 然后使用以下命令部署到Oracle中loadjava命令行实用程序 Apackage然后在数据
  • Oracle 11g OFFSET FETCH 给出错误

    我正在进行查询并尝试从数据库中获取随机数量的行 但 Oracle 一直告诉我我的命令尚未正确结束 select from random table order by random column name offset 0 rows fetc
  • 递归 SQL 给出 ORA-01790

    使用 Oracle 11g 第 2 版 以下查询给出 ORA 01790 表达式必须与相应表达式具有相同的数据类型 with intervals time interval AS select trunc systimestamp from
  • Oracle 9i:同义词表不存在?

    我创建了一个包 其中包含一个存储过程 我计划从单独的应用程序调用该存储过程 存储过程将返回架构中所有视图和表的排序列表 为此 它对 DBA TABLES 和 DBA VIEWS 同义词执行简单的选择 如下所示 CREATE OR REPLA
  • TOAD 将 &String 视为绑定变量

    我正在使用 Oracle Data Integrator 开发一些 ETL 有时会使用 TOAD 测试部分代码 今天我遇到了 TOAD 的问题 我有一行像 AND column value like DEV PROD 当我尝试运行包含上面过
  • 替换 Oracle 包的一部分

    我需要修改包内的一个过程 我需要接触声明和实施 由于我正在维护每次修改的补丁文件 因此我希望更改最小化 我可以仅使用更改的过程更新包 如果是 如何更新 还是需要提供完整的包定义和实现 您需要替换整个包规范和主体 您不能仅对包的一部分进行操作
  • T-SQL:如何使用 SELECT 创建表?

    在 oracle 中 您可以发出 create table foo as select from bar 等效的 T SQL 语句是什么 您可以使用SELECT INTO http msdn microsoft com en us libr

随机推荐