按照正常操作流程,启动项目,发现项目报错,原因是连接不上oracle数据库,

PLSQL连接时报错,错误码  ORA:12154 无法解析指定的连接标识符

第一次,遇到这个错误,在网上找了资料都是需要修改

监听(D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora)和服务(D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora)文件。

基于前一天正常使用,第二天莫名奇妙无法使用,排除文件少配置的问题。

第一次遇到这个错误的时候解决了一会,发现

当前是使用域用户登录的

然后切换回 本机用户登录

之后再次登录域用户   正常使用。正常连接。

没搞清楚是什么原因。

第二次,遇到这个错误,按照第一次的解决办法无效,又在网上找了半天,

查看服务,正常启动。

索性重新配置了服务,和 监听。

发现使用 Net Configuration Assistant 向导配置的时候,文件缺少 配置的本地服务描述,在这里是下面代码的最后一块。

# tnsnames.ora Network Configuration File: D:\oracle\product\11.2.\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools. ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
) LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = )) //这一块是缺少的 start
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = ))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
//这一块是缺少的 end

配置完成之后,本以为解决的,发现登录的时候。遇到了另外两个错误,

ORA:01034 和 ORA:27101

这....... 是什么情况~~~

然后的解决方案是:

命令行执行

1. sqlplus  /nolog

2. conn / as sysdba

2. create pfile from spfile; 生成的 pfile 叫INITorcl.ora,位于D:\oracle\product\11.2.0\dbhome_1\database下(找自己的安装目录)

3. 修改pfile里面的local_listener, 最后变成下面

orcl.__db_cache_size=352321536
orcl.__java_pool_size=8388608
orcl.__large_pool_size=8388608
orcl.__oracle_base='D:\oracle'#ORACLE_BASE set from environment
orcl.__pga_aggregate_target=444596224
orcl.__sga_target=847249408
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=469762048
orcl.__streams_pool_size=0
*.audit_file_dest='D:\oracle\admin\orcl\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='D:\oracle\oradata\orcl\control01.ctl','D:\oracle\flash_recovery_area\orcl\control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='orcl'
*.db_recovery_file_dest='D:\oracle\flash_recovery_area'
*.db_recovery_file_dest_size=4039114752
*.diagnostic_dest='D:\oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.local_listener='(ADDRESS_LIST=(Address=(Protocol=tcp) (Host=127.0.0.1)(Port=1521)))' //这里是修改的的一行
*.memory_target=1288699904
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

4. create spfile from pfile='INITorcl.ora';  //这里注意是单引号

5. startup

通常这里就已经把问题解决了。。

然而,然而, 我又遇到了另一个错误。。

ORA-18008: 无法找到 OUTLN 方案。

 
问题原因:outln用户被误删除。(昨天手贱把用户全选删除了)
 
解决步骤:
1、将oracle启动到mount状态(sql命令:startup mount;)
SQL> startup mount;
ORA-01031: 权限不足
 Note:哈哈,提示权限不足,没关系, 用系统账号登..
 
SQL> connect / as sysdba;
 已连接。
 
SQL> startup mount;
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
Note:心急吃不了热豆腐啊。。。
 
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
 
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area  591396864 bytes
Fixed Size                  1291916 bytes
Variable Size             314575220 bytes
Database Buffers          268435456 bytes
Redo Buffers                7094272 bytes
数据库装载完毕。
Note:运气不错,进入mount状态...
 
2、修改replication_dependency_tracking参数
SQL> alter system set replication_dependency_tracking =false scope=spfile;
系统已更改。
 
3、启动数据库至open状态
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
 
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  591396864 bytes
Fixed Size                  1291916 bytes
Variable Size             318769524 bytes
Database Buffers          264241152 bytes
Redo Buffers                7094272 bytes
数据库装载完毕。
数据库已经打开。
 
4、创建outln用户
SQL> create user outln identified by outln;
用户已创建。
 
SQL> select username from dba_users;
USERNAME
------------------------------
OUTLN
SYS
SYSTEM
SCOTT
Note:outln用户果然创建成功了。。。
 
5、修改回replication_dependency_tracking参数为true
SQL> alter system set replication_dependency_tracking =true scope=spfile;
系统已更改。
 
6、重新启动数据库,系统恢复正常
SQL> shutdown abort;
ORACLE 例程已经关闭。
 
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  591396864 bytes
Fixed Size                  1291916 bytes
Variable Size             322963828 bytes
Database Buffers          260046848 bytes
Redo Buffers                7094272 bytes
数据库装载完毕。
数据库已经打开。
 
Ok,搞定!
 
参考:https://www.thinksaas.cn/group/topic/566058/
 
 

oracle错误(ORA:12154 ORA:01034 和 ORA:27101 ORA-18008 ORA-01081)的更多相关文章

  1. Oracle 错误总结及问题解决 ORA

    参考地址 ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常.ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数O ...

  2. PLSQL登录数据库 报ORA -12154的诡异问题

    https://q.cnblogs.com/q/89420/ 现象: 1.机器上先后安装了oracle两个版本的client.在装第一个client后,plsql可以顺利连接数据库a并登录. 2.安装 ...

  3. EXP-00056:遇到oracle错误12154

    执行命令如下: 引用 exp user/pwd@dbname file=d:text.dmp owner=(user) 碰到了错误: 引用 EXP-00056:遇到oracle错误12154 ORA- ...

  4. 常见ORACLE错误,及解决方案(遇则即时更新)

    1.当登陆时提示“ORA-03113:通信通道的文件结束”时:        解决方案:                     需在X:\oraclexe\app\oracle\product\10 ...

  5. 遇到 ORACLE 错误 1658

    在对oracle导入数据时,多次报以下错误: IMP-00003: 遇到 ORACLE 错误 1659ORA-01659: 无法分配超出 1 的 MINEXTENTS (在表空间 ZSTA_DATA_ ...

  6. oracle错误:1067进程意外终止

    oracle错误:1067进程意外终止我Oracle安装完了之后可以运行的 ,过了一段时间不可以了,就上网找了一下,原来是自己的ip已经改变.我一直使用IP地址的. 将D:\oracle\produc ...

  7. 【Oracle错误集锦】:ORA-00119 & ORA-00132

    有时候老天就是爱和你开玩笑,昨天好不easy配置好Oracle.可以用PL/SQL正常登录使用,今天突然就不行了.而且错误十分诡异,没有提示什么错误代码.输入usernamepassword,点击登录 ...

  8. Oracle错误览表

    Oracle 错误总结及问题解决 ORA     本文转自:https://www.cnblogs.com/zhangwei595806165/p/4972016.html  作者@承影剑 ORA-0 ...

  9. (转)对Oracle导出文件错误和DMP文件结构的分析,EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier

    EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier 原因:oracle版本不一样 执行 C:/ ...

随机推荐

  1. More than one file was found with OS independent path 錯誤

    More than one file was found with OS independent path 'lib/armeabi/libmrpoid.so',. 翻譯過來就是:在操作系統的獨立目錄 ...

  2. 【亲测】Java 接口自动化步骤

    GET请求(Maven) 一. src/main/java 1.[地址--HOST]创建并设置配置文件(后缀名.properties的文本文件):存放接口请求的host地址 2.[地址]TestBas ...

  3. JavaScript数组方法--reduce、reduceRIght、reverse

    今天写的reduce是比较复杂的一个数组方法,其实在这之前我也用过reduce,可是每次用起来总感觉不那么顺手,主要还是因为不熟,对reduce本身不熟.首先reduce这个单词翻译为中文,不那么直观 ...

  4. c++ std 最小堆的使用 (用于实现top100之类的功能)

    #include<vector>#include<algorithm>#include<iostream> using namespace std; void Pr ...

  5. 初识异步、并发处理纯代码及Demo

    多线程Thread 处理 Thread thread = new Thread(()=> { ; i < ; i++) { Console.WriteLine("这是第" ...

  6. JDK8 lameda表达式学习例子

    lameda表达式是jdk8出的内容,作为一名老程序员,一直没接触.二次开发git上的一个开源项目,直接泪崩.于是赶紧补补课,直接上学习过程中的源码:package xx.test.lameda; i ...

  7. LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal 由前序和中序遍历建立二叉树 C++

    Given preorder and inorder traversal of a tree, construct the binary tree. Note:You may assume that ...

  8. React props

    class WebSite extends React.Component { constructor() { super(); this.state = { name: "菜鸟教程&quo ...

  9. laravel5.6中jquery+ajax分页

    public function shows(Request $request){ $p=$request->get("page"); $page=empty($p)?:$p; ...

  10. ios模拟器命令

    xcrun simctl list  //显示模拟器列表 xcrun simctl boot [模拟器id] //启动模拟器