zoukankan      html  css  js  c++  java
  • Oracle实例

    ORA-12505

    Listener refused the connection with following error:ORA-12505,TNS:listener

    确定这是连接数据库的SID错误,
    解决方法:
    1.知道你的SID名:可以再注册表中查找,也可以通过借助Oracle的sqlplus工具并以管理员方式连接敲命令查看:select instance_name from v$instance;必须是管理员身份,否则“视图不存在”。
    2.在Oracle SQL Developer连接工具上修改你的数据库SID名,我的如下(把"xe"修改成"orcl"):
    3.勾选“保存命令”,“角色”选择数据库管理员。
    4.点击“保存”和“测试”,并连接,剩下的就是连接成功了。

    ORA-12560:TNS:协议适配器错误

    在控制台下输入set oracle_sid=orcl,然后再输入sqlplus
    出现这种问题的原因就是注册表oracle_sid所代表的数据库不存在。
    原因很有可能是:你使用DBCA创建了一个数据库,然后又把它删除了。
    解决方案是:更改注册表,搜索oracle_sid.它在HKEY_LOCAL_MACHINESOFTWAREORACLEKEY_OraDb11g_home1项中。


    查看实例名称

    select instance_name from v$instance
    show parameter instance
    

    V$instance是视图,查看这个视图是怎么来的

    SELECT * FROM v$fixed_view_definition WHERE view_name =upper('v$instance')
    

    定义

    数据库实例是用于和操作系统进行联系的标识,也就是说数据库和操作系统之间的交互使用的是数据库实例。
    单机中,一个数据库对应一个实例。分布式中,一个数据库对应多个实例。一个实例只能对应一个数据库,一个数据库可以对应多个实例。

    Oracle_sid

    可以在控制台下使用set oracle_sid=orcl来指明oracle默认实例
    也可以在注册表中修改oracle_sid
    还可以在环境变量中添加oracle_sid

    当创建新数据库之后,注册表中的oracle_sid变成新数据库名字。如果此时删除此数据库,注册表中的oracle_sid不会马上变回来,这是在控制台下打开sqlplus就无法创建实例。

    参数文件(pfile和spfile)

    initSID.ora或init.ora文件,通常位于$ORACLE_BASE/admin/<SID>/pfile
    初始化文件记载了许多数据库的启动参数,如内存,控制文件,进程数等,在数据库启动的时候加载(Nomount时加载)

    Oracle数据库

    Oracle数据库是一系列物理文件的集合,包括控制文件、数据文件、联机日志文件、参数文件、密码文件等。
    即:Oracle Database = Controlfile + datafile + logfiel + spfile

    Oracle实例

    Oracle实例包括了内存结构(SGA)和一系列后台进程(Background Process),两者合起来称为一个Oracle实例。即:Oracle Instance = SGA + Background Process

  • 相关阅读:
    (教程)怎么避免拼多多比价订单行为
    Ubuntu下搭建apache2+GGI环境
    搭建k8s
    我的2021年总结
    工作三年的一些感悟
    xshell6+xftp6免安装破解版
    centos7启动docker容器时提示Error response from daemon: Unknown runtime specified dockerrunc
    解决一个C#中定时任务被阻塞问题
    工程中实际问题解决两例——基于C#
    解决一次gitlab因异常关机导致启动失败
  • 原文地址:https://www.cnblogs.com/weiyinfu/p/7443651.html
Copyright © 2011-2022 走看看