码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Oracle数据库的配置文件丢失或损失,重新执行pfile启动


    场景:两台Oracle数据库所在的服务器共享存储,磁阵损坏;现将RAC改为其中一台数据库单机启动。

    首先了解,Oracle中的参数文件是一个包含一系列参数以及参数对应值的系统文件。数据库启动时加载参数文件,按参数文件中的配置决定数据库的物理结构、内存、数据库的限制等各种属性。

    因此需要在服务器指定生成一个新的pfile参数文件。

    我在测试环境中模拟删除掉配置文件pfiles和dbf来模拟上述场景。

    步骤:

    1.启动监听

    监听查看是停止的,直接启动失败,因为配置了scan ip。

    修改配置文件:

    vi /oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

    将其中的scan ip替换为服务器的物理ip地址。 

    运行lsnrctl start 成功

    这里我拿自己的测试库现做的实验 

    2. 启动数据库

    1. sqlplus /nolog
    2. conn /as sysdba

    直接startup

    会报错:

    ORA-01078: failure in processing system parameters
    ORA-01565: error in identifying file '+SYS/XXX.ora'
    ORA-17503: ksfdopn:10 Failed to open file +XXX.ora
    ORA-29701: unable to connect to Cluster Synchronization Service

    因为无法访问pfile文件,因为在本机新建参数文件。

    一般参数文件可分为:pfile(文本文件)和 spfile(二进制文件)。

    系统启动时默认读取 spfile 来初始化实例,可以通过 show parameter spfile;命令来查看实例是不是通过 spfile 启动。如果数据库未启动,运行此命令是报错的。

    创建文本文件 pfile,让数据库根据 pfile 中的参数来初始化实例

    create pfile='/data/oracle/product/11.2.0/dbs/test_pfile.ora' from spfile;
    

    启动数据库时读取 pfile 文件:

    startup pfile='/data/oracle/product/11.2.0/dbs/test_pfile.ora'

     启动成功

    but,上面是dbf正常的情况,如果磁阵损坏,dbf也是无法访问,需要重新指定的,备份重命名dbf文件,重新启动显示:

     alter database datafile '/data/oracle/product/11.2.0/dbs/ptho_ts.dbf' offline drop;

     其中archive log list; //查一下数据库的归档模式

     打开数据库后看到还有其他的dbf文件


    以上是对单机的数据库命令,如果是RAC,还需要停止集群服务。

    使用的 crsctl 命令如下:

    1. crsctl check has ## 检查 HAS 的状态
    2. crsctl config has ## 显示 HAS 的自动启动/配置
    3. crsctl disable has ## 禁用 HAS 的自动启动
    4. crsctl enable has ## 启用 HAS 的自动启动
    5. crsctl start has ## 启动本地服务器上的 HAS
    6. crsctl stop has ## 停止本地服务器上的 HAS

    下面的2个命令:使用crs 和 使用has 效果是完全一样的:

    #crsctl stop crs [-f]

    #crsctl start crs

    参加文章:

    ORACLE 11g RAC 集群的管理与维护(1) —— crsctl 命令之(一) :概述_睿思达DBA_WGX的博客-CSDN博客_oracle11g rac 维护

  • 相关阅读:
    mysql oracle统计报表每天每月每年SQL
    【微信小程序】2023年11月版本 关于小程序隐私保护指引设置的公告 | 修改微信小程序隐私保护 |小程序无法获取用户昵称 头像 性别 等问题
    应对广告虚假流量,app广告变现该如何风控?
    可视化数学分析软件 MATLAB R2021b mac中文版软件介绍
    【译】使用 ChatGPT 和 Azure Cosmos DB 构建智能应用程序
    TCP流套接字编程
    【Graph】NetworkX官方基础教程
    linux系统安装步骤
    Jmeter(八):jmeter接口自动化测试操作流程、计数器、定时器详解
    实践笔记-docker安装及配置镜像源
  • 原文地址:https://blog.csdn.net/wjzholmes/article/details/126287719
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号