工具篇(Oracle)---常用脚本

Oracle 工具篇+Oracle Remote Diagnostic Agent(RDA) 说明:本文为面向Oracle Remote Diagnostic Agent(RDA)初学者的指导手册 标签:Oracle Remote Diagnostic Agent、RDA、数据库诊断、数据库健康检查 注意:文中删去了不需要的多余部分,让初学者一目了然一学就会 相关工具:Oracle常用的诊断工具有:ORAchk运行状况检查工具 温馨提示:如果您发现本文哪里写的有问题或者有更好的写法请留言或私信我进行修改优化 ★ 相关文章 ※ ORAchk运行状况检查工具 ※ Remote Diagnostic A 阅读详情

目录

概述

一键解锁脚本

一键加索引脚本

一键数据库闪回脚本


概述

    根据项目需求写的一些脚本,仅作参考,后续新脚本会接着追加

一键解锁脚本

DECLARE

  V_SQT       VARCHAR2(200);
  V_ERRORTEXT VARCHAR2(200);

BEGIN

  FOR ITEM IN (SELECT C.OBJECT_NAME,
                      B.USERNAME,
                      B.SID,
                      B.SERIAL#,
                      LOGON_TIME
                 FROM V$LOCKED_OBJECT A, V$SESSION B, DBA_OBJECTS C
                WHERE A.SESSION_ID = B.SID
                  AND A.OBJECT_ID = C.OBJECT_ID
                GROUP BY C.OBJECT_NAME,
                         B.USERNAME,
                         B.SID,
                         B.SERIAL#,
                         LOGON_TIME) LOOP
  
    DBMS_OUTPUT.PUT_LINE('锁表用户:' || ITEM.USERNAME || '    被锁表名:' ||
                         ITEM.OBJECT_NAME || '    锁表时间:' ||
                         ITEM.LOGON_TIME);
  
    V_SQT := 'ALTER SYSTEM KILL SESSION ' || '''' || ITEM.SID || ',' ||
             ITEM.SERIAL# || '''';
  
    DBMS_OUTPUT.PUT_LINE(V_SQT);
  
    BEGIN
      EXECUTE IMMEDIATE V_SQT;
    
    EXCEPTION
    
      WHEN OTHERS THEN
      
        DBMS_OUTPUT.PUT_LINE('解锁失败');
      
        V_ERRORTEXT := SUBSTR(SQLERRM, 1);
      
        DBMS_OUTPUT.PUT_LINE(V_ERRORTEXT);
    END;
  
  END LOOP;

END;

一键加索引脚本

DECLARE

  INDX VARCHAR2(30);

  SQLT VARCHAR(1000);

  NSQLT VARCHAR(1000);

  ERRORTEXT VARCHAR2(200);

  BUMS NUMBER := 0;

BEGIN

  DBMS_OUTPUT.ENABLE(100000000);

  -- 循环遍历出所需要创建索引的表以及索引字段和索引名
  FOR ITEM IN (SELECT C.TABLE_NAME,
                      CC.COLUMN_NAME,
                      ('ATSI_' || CC.COLUMN_NAME) INDX,
                      CC.POSITION COLUMN_POSITION
                 FROM USER_CONSTRAINTS C, USER_CONS_COLUMNS CC
                WHERE C.CONSTRAINT_NAME = CC.CONSTRAINT_NAME
                  AND C.CONSTRAINT_TYPE = 'R'
               MINUS
               SELECT I.TABLE_NAME,
                      IC.COLUMN_NAME,
                      ('ATSI_' || IC.COLUMN_NAME) INDX,
                      IC.COLUMN_POSITION
                 FROM USER_INDEXES I, USER_IND_COLUMNS IC
                WHERE I.INDEX_NAME = IC.INDEX_NAME) LOOP
    BEGIN
    
      -- 如果索引过长则进行截取
      IF LENGTHB(ITEM.INDX) > 30 THEN
        INDX := SUBSTR(ITEM.INDX, 0, 30);
      ELSE
        INDX := ITEM.INDX;
      END IF;
    
      -- 创建索引语句   
      SQLT := 'CREATE INDEX ' || INDX || ' ON ' || ITEM.TABLE_NAME || '(' ||
              ITEM.COLUMN_NAME || ')';
    
      -- 输出语句脚本,以作记录
      DBMS_OUTPUT.PUT_LINE(SQLT || ';');
    
      -- 执行语句
      EXECUTE IMMEDIATE SQLT;
    
    EXCEPTION
    
      WHEN OTHERS THEN
      
        DBMS_OUTPUT.PUT_LINE('创建索引失败');
      
        ERRORTEXT := SUBSTR(SQLERRM, 1);
      
        DBMS_OUTPUT.PUT_LINE(ERRORTEXT);
      
        DBMS_OUTPUT.PUT_LINE('');
      
        -- 如果名称已被使用则后缀加个累加标志
        IF ERRORTEXT = 'ORA-00955: 名称已由现有对象使用' THEN
          NSQLT := 'CREATE INDEX ' || INDX || BUMS || ' ON ' ||
                   ITEM.TABLE_NAME || '(' || ITEM.COLUMN_NAME || ')';
        
          BUMS := BUMS + 1;
        
          BEGIN
          
            DBMS_OUTPUT.PUT_LINE(NSQLT || ';     --- NEW');
            EXECUTE IMMEDIATE NSQLT;
          
          EXCEPTION
          
            WHEN OTHERS THEN
            
              ERRORTEXT := SUBSTR(SQLERRM, 1);
            
              DBMS_OUTPUT.PUT_LINE(ERRORTEXT);
            
          END;
        
          DBMS_OUTPUT.PUT_LINE(NSQLT);
        END IF;
      
    END;
  
  END LOOP;

END;

一键数据库闪回脚本

DECLARE

  -- 要回闪的表名字
  TABLENAME VARCHAR2(30) := 't_taskparamdef';

  -- 要回闪到的时间节点(2019-05-22 10:37:00)类似这种形式
  ROLLTIME VARCHAR2(30) := '2019-05-22 11:49:00';

  SQLT VARCHAR(1000);

BEGIN

  -- 启动要回闪表的行移动功能
  SQLT := 'ALTER TABLE ' || TABLENAME || ' ENABLE ROW MOVEMENT';

  -- 执行语句
  EXECUTE IMMEDIATE SQLT;

  -- 开始回闪到指定时间的表数据
  SQLT := 'FLASHBACK TABLE ' || TABLENAME || ' TO TIMESTAMP TO_TIMESTAMP(' || '''' ||
          ROLLTIME || '''' || ',' || '''' || 'yyyy-MM-dd HH24:MI:SS' || '''' || ')';

  -- 执行语句
  EXECUTE IMMEDIATE SQLT;
END;

 

【Oracle篇】Oracle的客户端工具 可能一提起Oracle的客户端工具,你可能第一反应是PLSQL啊,Navicat等等。不知道你用的Oracle的客户端工具是什么,根据公司要求、个人喜好,也许不能保证每个人用的都是同一个。这篇博客呢,我们先不介绍Oracle那些外在的客户端工具,我们来好好说说SQL Plus,像PLSQL Developer或Navicat,我后面会慢慢介绍,别急。      对Oracle熟悉的人一定知道SQ 阅读详情

相关推荐

oracle常用监控脚本(纯干货,没有EMCC,ZABBIX也不怕)

对于运维来说监控是至关重要的,特别是越来越多的库,纯人工查看是不可能的,博主一个人管理接近100个实例,就是依赖于完善的监控系统;如果没有完善的监控体系,那么就需要一些常用的监控脚本作为辅助,这里介绍博主常用的13个监控脚本,可以满足大部分监控场景,欢迎下载分享。

qq_24442273的博客 1095

Oracle常用脚本

原文链接:https://www.cnblogs.com/sankuoshu/p/14750897.html。–Meathod2:新增数据文件,并且允许数据文件自动增长。–Meathod3:允许已存在的数据文件自动增长。–Meathod4:手工改变已存在数据文件的大小。–oracle查看被锁的表或者数据以及解锁方法。/完整倒库*****************/–Meathod1:给表空间增加数据文件。–查看表空间是否具有自动扩展的能力。–增加表空间大小的四种方法。–查看表空间使用情况。

u010741112的博客 1151

Oracle的一些脚本工具总结

第三个参数:等待事件,比如 on cpu,根据@ash_total.sql的结果中最多的分类。这是oracle官方提供的一个脚本,需要根据数据库版本下载对应的oratop版本。比如:收集2小时前开始的ash,总共收集1小时,按照每2分钟分类展示。第二个参数:收集多久的ash,即收集多长时间。第二个参数:收集多久的ash,即收集多长时间。脚本,数据库性能情况,查看当前数据库会话情况。第一个参数:几个小时之前开始的,即开始时间。第一个参数:几个小时之前开始的,即开始时间。查看一次会话产生的日志情况,间隔3秒。

1738

oracle数据库常用脚本1

oracle数据库常用脚本1。

DoubleJing的博客 436

Oracle数据库备份脚本

Oracle数据库备份脚本 用于备份数据库里的所有数据

《探秘 BME680温度湿度气压气体传感器模块:环境感知的卓越之选》:此文为AI自动生成

BME680 是一款由博世公司推出的集成环境传感器模块,在环境监测和物联网等领域中发挥着重要作用。它能够同时测量温度、湿度、气压和气体浓度等多个环境参数,为各种应用提供准确可靠的环境数据。该模块采用小巧的封装形式,便于集成到各种设备中,无论是智能家居、可穿戴设备还是工业监测系统,都能轻松适配。例如,在智能家居系统中,BME680 模块可以监测室内环境参数,如温度、湿度、气压和空气质量等。通过与智能家居控制器或智能手机应用程序的连接,用户可以实时了解室内环境状况,并根据需要进行调整。

zheng_ruiguo的专栏 1866

Oracle常用语句脚本

Oracle常用的语法,建表,存储,DBLink等

m0_37873601的博客 551

汇川EASY521 PLC实战指南:从硬件选型到程序架构与故障排查

可编程逻辑控制器(PLC)是工业自动化系统的核心大脑,其工作原理基于循环扫描机制,持续读取输入、执行用户程序并更新输出。这种确定性控制方式,使其在逻辑控制、顺序控制和运动控制中具有不可替代的技术价值,广泛应用于机械设备、生产线和过程控制等场景。对于汇川EASY521这类紧凑型高性能PLC,其核心优势在于集成了运动控制与丰富通讯接口,为中小型设备提供了高性价比的一站式解决方案。在实际应用中,工程师常需处理如“汇川sv660n”伺服驱动器的集成调试,或利用“hslcommunication”等开源库实现C#上位

weixin_42525264的博客 735

oracle常用脚本

表空间 创建表空间 create tablespace ts_dev datafile ‘f:\oracle\product\10.2.0\oradata\baseorcl\dev_data.dbf’ size 100m autoextend on next 10m; 创建临时表空间: create temporary tablespace 表空间名称(如:mytempspace) tempfile 数据文件(如:'E:\oracle\product\10.2.0\oradata\orcl\temp_ta.

csdnklsdm的博客 849

告别手动发日报!用n8n+钉钉打造智能报告机器人(含模板下载)

本文详细介绍了如何利用n8n开源工作流自动化平台与钉钉机器人搭建智能日报系统,实现数据自动采集、处理和发送。通过实战步骤和模板下载,帮助用户告别手动处理日报的繁琐,提升工作效率和数据准确性。

h3i4j的博客 856

UM982模组在无人机精准农业中的实战应用:如何配置双天线RTK实现厘米级定位

本文深入解析了UM982双天线RTK模组在农业无人机中的实战应用。通过详细阐述其硬件集成、软件配置及抗干扰调试全流程,重点说明了如何利用双天线设计直接获取高精度航向,并结合BDS等多系统GNSS信号,实现农田复杂环境下的厘米级稳定定位,从而提升变量施肥、自动巡田等精准农业作业的效率与质量。

weixin_29304021的博客 504

ORACLE 管理员常用脚本

ORACLE 管理员常用脚本

youp121的博客 729

保姆级教程:用Python 3.10和Ollama在Windows上搞定LightRAG本地部署(附环境配置避坑指南)

本文提供了一份详细的Windows系统下LightRAG本地部署指南,涵盖Python 3.10环境配置、Ollama模型服务安装到LightRAG核心组件部署的全流程。特别针对Windows平台常见问题提供解决方案,帮助开发者快速搭建高效的检索增强生成(RAG)系统,实现专业领域知识的智能检索与整合。

weixin_28725407的博客 482

oracle脚本管理工具,ORACLE DBA常用SQL脚本工具->管理篇(1) (转)

ORACLE DBA常用SQL脚本工具->管理篇(1) (转)[@more@]在较长时间的与的交往中,每个a特别是一些大侠都有各种各样的完成各种用途的脚本工具,这样很方便的很快捷的完成了日常的工作,下面把我常用的一部分展现给大家,此篇主要侧重于管理,这些脚本都经过严格测试。1、表空间统计:namespace prefix = o ns = "urn:schemas--com::office"...

weixin_29408705的博客 446

sam3.1 部署笔记 推理封装

sam3.1 部署笔记

jacke121的专栏 422

《基于FPGA的数字信号处理》专栏的导航与说明

《基于FPGA的数字信号处理》专栏的导航与说明

孤独的单刀 4160

Oracle 工具篇+ORACLE_LOADER Access Driver

说明:本文为面向Oracle ORACLE_LOADER初学者的指导手册 标签:ORACLE_LOADER、数据加载、数据导入、外部表 注意:文中删去了不需要的多余部分,让初学者一目了然一学就会 相关工具:Oracle常用的3种数据加载工具sql_loader、oracle_loader、oracle_datapump 温馨提示:如果您发现本文哪里写的有问题或者有更好的写法请留言或私信我进行修改优化 ★ 相关文章 ※ SQL*Loader ※ ORACLE_LOADER Access Driver(本文

ZZT_2009 1233

链接文件及功能安全:S32K3如何将FLASH驱动放到RAM里面、RAM如何实现软件复位数据不丢失操作。

在通过RTD的SDK也好MCAL也好,始终存在一个问题,生成的代码除了看门狗模块,默认都是放在flash里面,按照正常逻辑来看没啥大的问题,思考一个问题:Flash放在0x100的位置,但是此时我们要操作0x100怎么办?那肯定不允许啊,但是将flash的驱动放在RAM里面就可以避免这个问题的产生。Flash的特性:PF0能操作PF1,当然PF1也能操作PF0的,以此类推,只要不操作自身,想怎么玩都可以。这也是一个物理特性吧。

梦想技术家 2310

Oracle【安装篇】09:使用脚本安装Oracle11g、Oracle12c、Oracle19c

使用脚本安装Oracle11g、Oracle12c、Oracle19c

weixin_40612128的博客 1477

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

ORACLE常用脚本

-不使用合并排序表连接。--不使用HASH表连接。

zhaochuan1992的博客 491

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

oracle ora工具脚本,ORA脚本工具

#!/bin/shif [ "$LOGNAME" = "oracle" ]; thenSQLPLUS_CMD="/ assysdba";elseSQLPLUS_CMD="/";ficase $1 insi)if ["$LOGNAME" = "oracle" ]; thensqlplus "/ as sysdba"elsesqlplus "/"fi;;active)sqlplus -s "$SQLP...

weixin_34797871的博客 1334

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ORACLE常用脚本总结

--创建表空间 create tablespace namespacefeng2 datafile  'D:\namespacefeng2.DBF' size 100M autoextend on next 30M maxsize unlimited   logging extent management local segment space management auto --创

namespacefeng的专栏 4806

ORACLE 生成AWR常用脚本

awrgrpti.sql -- 生成 Oracle RAC 环境中多个数据库实例的 AWR 报告的方法。awrddrpi.sql -- 指定数据库实例,并指定两个的不同时间周期,生成这两个周期的统计对比报告。awrsqrpi.sql -- 生成指定数据库实例、指定快照区间的指定SQL语句的统计报告。awrddrpt.sql -- 指定两个不同的时间周期,生成这两个周期的统计对比报告。@awrddrpi.sql -- 生成特定数据库实例的 AWR 时段对比报告。

Ahern_的博客 806

oracle官网中的脚本,Oracle常用脚本

1.linux 启动数据库脚本#!/bin/bashexportORACLE_HOSTNAME=emcc.example.comecho"StartingtheOracleDatabaseandnetworklistener....."echo""exportORACLE_HOME=/u01/db/product/dbhome_1exportPATH=$ORACLE_HOM...

weixin_26763955的博客 304

Oracle数据库常用脚本

此篇文档主要整理了oracle数据库日常维护中用到的相关脚本,欢迎各位数据库大神批评指正。同时也欢迎评论区留言讨论和补充日常数据库维护中用到的宝典!

u013456330的博客 429
上一篇: 基础篇(原理)--- 多线程
下一篇: 工具篇(Docker)---Windows上安装使用Docker
Coder_Light
博客等级 码龄9年 30粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值