惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Jina AI
Jina AI
小众软件
小众软件
量子位
博客园 - 三生石上(FineUI控件)
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
博客园_首页
IT之家
IT之家
S
SegmentFault 最新的问题
博客园 - 叶小钗
阮一峰的网络日志
阮一峰的网络日志
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
T
Tailwind CSS Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
爱范儿
爱范儿
月光博客
月光博客
有赞技术团队
有赞技术团队
H
Help Net Security
云风的 BLOG
云风的 BLOG

博客园 - 停留的风

SpringBoot入门 【SQL实践】其他常用SQL汇总 2017年考研英语二真题与答案(最新) oracle基础教程(8)oracle修改字符集 领域驱动(DD)目录 [开源项目]Hibernate基本使用 Oracle基本教程 系统架构研究目录 设计原则目录 Oracle 备份与还原 Oracle 物理备份--rman Oracle 使用SqlPlus管理 Oracle 用户管理与权限控制 oracle 科普 Java基础--Java语言介绍 Java基础--serialVersionUID 开源项目学习历程 开源项目学习记录 Eclipse 常用快捷键
Oracle 异常处理汇总
停留的风 · 2016-07-03 · via 博客园 - 停留的风

Oracle 异常处理汇总

1、plsql无法连接

安装oracle,中间录入密码,用户是:sys,pass: 录入的密码。

连接数据库,建议创建新的用户,最好别直接用sys

安装完毕,则需要配置Net Configration Assistant,才能通过pl/sql连接

确保服务监听服务已经启动

2、遇到ORACLE错误12514

解决方案:

1) 找到监听文件

C:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora

打开:

# listener.ora Network Configuration File: C:\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-L7MD6EPHO8Q.localdomain)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = C:\Oracle

修改为:

# listener.ora Network Configuration File: C:\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-L7MD6EPHO8Q.localdomain)(PORT = 1521))
    )
    (SID_DESC =
       (GLOBAL_DBNAME = orcl)
       (ORACLE_HOME = \product\11.2.0\dbhome_1)
       (SID_NAME = orcl)
     ) 
  )

ADR_BASE_LISTENER = C:\Oracle

ORACLE_HOME: oracle安装目录

GLOBAL_DBNAME: 实例名,默认为orcl

2) 重启监听器,当然可以在windows服务中重启

打开cmd,执行:

    lsnrctl stop   // 关闭
    lsnrctl start  // 启动

3、oracle 11g如果遇到这个问题12514

解决方案:

1、SID_NAME改为具体的实例名,如:orcl

2、删除  (PROGRAM = extproc)

# listener.ora Network Configuration File: D:\oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = orcl)
      (ORACLE_HOME = D:\oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:D:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

SID_LIST_ORCL =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:D:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.30.134)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = D:\oracle

4、imp还原数据库时报错:错误12514

IMP-00058: 遇到 ORACLE 错误 12514
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
IMP-00000: 未成功终止导入

 注意导入的实例名是否正确,可参考上述解决方案。

5、删除用户时提示:无法删除当前连接的用户

第 1 行出现错误:
ORA-01940: 无法删除当前连接的用户

说明,当前存在用户的session.

解决方案:

1、首先查找session,确定是那个进程引用

select username,sid,serial# from v$session 

或者查询增加用户的过滤条件,只查该用户的

select username,sid,serial# from v$session where username='DEMO'

2、杀死相应的session

alter system kill session'$sid,$serial';

3、强制删除用户

6、导入数据时遇到 ORACLE 错误 959

IMP-00003: 遇到 ORACLE 错误 959
ORA-00959: 表空间 'xxx' 不存在
IMP-00017: 由于 ORACLE 错误 959, 以下语句失败:

解决方案:

1、导入前,先创建表空间

create tablespace demo datafile 'D:\oracle\data\demo.dbf' size 100M autoextend on;

2、指定用户该表空间不受限

alter user xxx quota unlimited on demo;//后面的demo是表空间名

3、然后再imp即可

注意导入时一定要指定log,便于分析解决