当前位置: 首页 > article >正文

Oracle 运维相关概念及操作

基础概念

数据库几种状态 NOMOUNT、MOUNT、OPEN

(1)nomount状态:读参数文件,启动实例和后台进程

(2)mount状态:加载控制文件,让实例和数据库相关联

数据库启动为mount状态,才可以查看查看checkpoint_change#(检查点),主要是系统检查点、数据文件检查点以及数据文件头检查点,这些检查点都是记录在控制文件中,因此数据库必须是mount状态。

(3)open状态:根据控制文件找到并打开数据文件和日志文件,从而打开数据库

当系统、数据文件以及数据文件头这三个checkpoint_change#一致(只读、脱机表空间除外)时,数据库才能正常打开。正常关库时,会生成新的检查点,写入上述三个checkpoint_change#,同时数据文件中的last_change#也会记录下该检查点,也就是说三个checkpoint_change#与last_change#记录着同一个值。

当 Oracle 数据库处于 MOUNT 状态的时候(非 OPEN 状态)时,只有 SYSDBA 角色的用户才可以连接上数据库,即使是 sys 账号也必须以 sys as sysdba 的形式登录。否则会报错 ORA-01033: ORACLE initialization or shutdown in progress。

使用Alter Database语句,在各启动模式间切换。
1.从NoMount模式切换到Mount模式(没有从mount切换到nomount的):

命令:ALTER DATABASE MOUNT;

2.当数据库状态为关闭时,切换到Open模式

命令:ALTER DATABASE OPEN;

从 OPEN 状态切换到 MOUNT 状态。

startup mount;

或者

startup mount force;

运维操作

启动监听器

作用是接受外部的访问连接。

查看监听器状态:

lsnrctl status

启动监听器:

lsnrctl start

停止监听器:

lsnrctl stop

重启监听器:

lsnrctl reload

重启将会在不需要关闭和启动监听器的情况下读取listener.ora的配置。

Oracle 重启监听 - 乌托邦眺望 - 博客园

监听器日志和相关问题

listener.log 中的内容是什么含义?可以参考:

Oracle 监听日志信息挖掘_oracle service_update-CSDN博客

当链接异常时,能够经过分析监听日志来查找线索 - 知乎

启动数据库

startup

如何在linux下启动oracle数据库服务_huryer的博客-CSDN博客_xshell中用sqlplus登录数据库

回收空间

Oracle 数据库中的空间回收和表收缩_南朝雨的博客-CSDN博客

ALL_CONS_COLUMNS ALL_CONSTRAINTS 等表查询慢

使用有 SYSDBA 权限的账号执行:

-- 清空回收站
PURGE DBA_RECYCLEBIN;
-- 收集 SYS 和 SYSTEM 中等系统字典表等的统计信息
BEGIN
    DBMS_STATS.GATHER_DICTIONARY_STATS;
END;
-- 优化 X$ V$ 等开头的表的性能
BEGIN
    DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
END;

Oracle 12c - Slow query to tables ALL_CONS_COLUMNS and ALL_CONSTRAINTS - Database Administrators Stack Exchange

ALL_CONSTRAINTS 查询优化

optimization - How to tune the query on all_constraints in Oracle 12c? - Database Administrators Stack Exchange

上边这篇文章还没有详细查看和本地测试。

常见报错

问题1:conn /as sysdba 报错 ORA-01017: invalid username/password; logon denied

建议:查看一下是否是使用操作系统的 root 用户,需要切换到 oracle 用户。

回收高水位空间

reclaim the space after a large delete in oracle - Stack Overflow

Oracle 的配置文件

oracle三个重要参数文件:pfile和spfile和init.ora - jinzi - 博客园

检查 alert 日志

SELECT * FROM V_$PARAMETER
WHERE NAME LIKE '%dump%';

查看结果中的 background_dump_dest,这个值就是保存 alert log 的地方。

ll -rt 可以展示所有文件。

有一个 alert_XXXX.log 名字的日志

oracle 11g查看alert日志方法 - 高伟-林州 - 博客园

参考资料

  1. Oracle 12c - Slow query to tables ALL_CONS_COLUMNS and ALL_CONSTRAINTS - Database Administrators Stack Exchange
  2. Purge Oracle Recyclebin
  3. sys和system用户、sysdba 和sysoper系统权限、sysdba和dba角色的区别_运维笔录 美玲的技术博客_51CTO博客
  4. DBMS_STATS、
  5. [译]Fixed Objects统计信息以及为什么他们如此重要 - 墨天轮
  6. Regathering Fixed Objects Statistics with DBMS_STATS
  7. optimization - How to tune the query on all_constraints in Oracle 12c? - Database Administrators Stack Exchange
  8. Oracle数据库nomount,mount以及open状态 - Yooqi - 博客园
  9. Oracle数据库启动过程及状态详解(nomount、mount和open) - 墨天轮
  10. 如何从数据库open状态到mount状态 - Oracle数据库管理 - ITPUB论坛-专业的IT技术社区
  11. Oracle 重启监听 - 乌托邦眺望 - 博客园

http://www.kler.cn/news/368471.html

相关文章:

  • 【认知智能】编译器1
  • Python图像处理——基于ResNet152的人脸识别签到系统(Pytorch框架)
  • 【Qt 读取、修改、存储.ini文件】及完整示例
  • JAVA-----线程池
  • 错误:无法推送一些引用到 ‘https://gitee.com/chek_kk/python-electron-app.git‘
  • 基于springboot+vue的高校就业管理系统,
  • 逻辑推理学习笔记
  • [mysql]单行函数的练习
  • css知识点梳理2
  • 【论文阅读】PGAN
  • 【北京迅为】《STM32MP157开发板嵌入式开发指南》-第六十七章 Trusted Firmware-A 移植
  • 鸿蒙中常见的性能优化
  • 2024.10.24华为(留学生)笔试题解
  • 道路车辆功能安全 ISO 26262标准(9-4)—面向汽车安全完整性等级 (ASIL) 和安全的分析
  • ELK日志收集
  • TortoiseSVN 添加日志模板
  • SQL中实现去重的多种方法
  • VMware 版本不兼容问题及解决方案
  • Spring Boot论坛网站:多用户环境的构建
  • spring 学习路线梳理(一)
  • Apache Seata 新版本集成了 RocketMQ 事务消息
  • Supabase:当开源遇上实时数据库服务
  • 如何防止服务器被渗透攻击
  • 在flask微服务中使用调度器设置定时任务:BackgroundScheduler
  • 怎样找到台式电脑的ip地址?系统不同,方法各异
  • 手机玩黑色沙漠?GameViewer远程玩黑色沙漠教程