数据库管理-第九十四期 19c OCM之路-第四堂(02)(20230725)

第九十四期 19c OCM之路-第四堂(02)(20230725)

第四堂继续!

考点3:SQL statement tuning SQL语句调优

  1. 收集Schema统计信息
exec dbms_stats.gather_schems_stats('HR');
  1. 开启制定表索引监控
create index sh_cust_ind_1 on sh.customers(CUST_LAST_NAME));select 'alter index sh.'||index_name||' monitoring usage;' from dba_indexes where owner='SH' and table_name='CUSTOMERS';-- 执行输出结果
  1. 创建索引组织表
    按照题目要求创建对应的表:
create table oltp_user.students(stud_id number primary key,fname varchar2(20),lname varchar2(20));
create table oltp_user.classes(class_id number primary key,class_name varchar2(20));
CREATE USER oltp_attendees (stud_id NUMBER,class_id NUMBER,constraint pk_s_c_pk ( stud_id, class_id ),constraint fk_stud_id foreign key ( stud_id ) references oltp_user.students ( stud_id ),constraint fk_class_id foreign key ( class_id ) references oltp_user.classes ( class_id ) 
) organization INDEX;
  1. 收集直方图统计信息
exec dbms_stats.gather_table_stats('HR','EMPLOYEES', method_opt=>'for columns size skewolny');
  1. 创建位图索引(低选择性)
create bitmap index sh.cust_c_bit on sh.customers(country_id);
  1. 压缩索引
create index sh.cust_c_ind sh.customers(country_id,cust_city) compress 1;
  1. 共享池保存
exec dbms_shared_pool.keep('STANDARD','P');
  1. 绑定变量配置为相似匹配
alter system set cursor_sharing='SIMILAR';
  1. 段空间管理改为自动
    需要将CUST_TBS表空间转换为级自动管理:
select 'alter table '||owner||'.'||table_name||' move tablepsace users;' from dba_tables where tablespace_name='CUST_TBS';
select 'alter index '||owner||'.'||index_name||' rebuild tablepsace users;' from dba_indexes where tablespace_name='CUST_TBS';
-- 执行输出
drop tablespace cust_tbs including contents and datafiles;
create tablespace cust_tbs datafile '/u01/app/oracle/oradata/PROD4/cust_tbs' size 10m autoextend on;-- 替换前面输出结果将表和索引表空间变更回cust_id
  1. 收集多列统计信息
exec dbms_stats.create_extended_stats('HR','EMPLOYEES','(DEPARTMENT_ID,SALARY'));
exec dbms_stats.gather_table_stat('HR','EMPOLYEES',method_opt=>'for columns (DEPARTMEMT_ID,SALARY)');
  1. SPA
    建议使用EMCC进行操作:
    在这里插入图片描述
    在这里插入图片描述
    后续操作根据提示来做。如时间不足可放弃。
  2. SPM基线稳定

Oracle database 19c:
\qquad ->PL/SQL Packages and Types Reference
\qquad\qquad ->171 DBMS_SQLTUNE
\qquad\qquad\qquad ->171.5 Summary of DBMS_SQLTUNE Subprograms
\qquad\qquad\qquad\qquad ->171.5.8 CREATE_SQLSET Procedure and Function
\qquad\qquad\qquad\qquad ->171.5.35 SELECT_CURSOR_CACHE Function
\qquad\qquad\qquad\qquad ->171.5.19 LOAD_SQLSET Procedure

Oracle database 19c:
\qquad ->PL/SQL Packages and Types Reference
\qquad\qquad ->163 DBMS_SPM
\qquad\qquad\qquad ->163.6 Summary of DBMS_SPM Subprograms
\qquad\qquad\qquad\qquad ->163.6.15 LOAD_PLANS_FROM_SQLSET Function
\qquad\qquad\qquad\qquad ->163.6.9 EVOLVE_SQL_PLAN_BASELINE Function

select * from scott.e1 where empno=7788;exec dbms_sqltune.create_sqlset(sqlset_name=>'sqlset1',sqlset_owner=>'SYS');declarecur dbms_sqltune.sqlset_cursor;a1 varchar2(100);
begina1 := 'upper(sql_text) like "SELECT % FROM SCOTT.E1 WHERE EMPNO=7788%';open cur forselect value(p) from table(dbms_sqltune.select_cursor_cache(attribute_list=>'TYPICAL',base_filter=>a1)) p;dbms_sqltune.load_sqlset(sqlset_name=>'sqlset1',populate_cursor=>cur,load_option=>'MERGE',update_option=>'ACCUMULATE',sqlset_owner=>'SYS');
end;
/alter session set optimizer_capture_sql_plan_baseline=true;declaremp pls_integer;
beginmp :=dbms_spm.load_plans_from_sqlset(sqlset_name=>'sqlset1');
end;
/select * from scott.e1 where empno=7788;
select sql_handel,plan_name,accepted,enabled,fixed from dba_sql_plan_baselines; --结果Acreate index scott.e1_ind on scott.e1(empno);select * from scott.e1 where empno=7788;
select sql_handel,plan_name,accepted,enabled,fixed from dba_sql_plan_baselines; --结果Bdeclarer clob;
beginr:=dbms_spm.evolve_sql_plan_baseline(sql_handle=>'上面查出来的SQL_HANDLE');-- dbms_output.put_line(r);
end;
/select sql_handel,plan_name,accepted,enabled,fixed from dba_sql_plan_baselines; --结果变为相同

考点4:Create appropriate schema objects 创建Schema对象

lob列建表配置:

create table ...,lob_col(clob),... tablespace userlob(lob_col) store as (tablespace lob_datadisable storage in rowchunk 16knocachestorage (initial 2mnext 2m))
;

考点5:Configuring parallel execution 配置并行执行

这里就要详见数据库管理-第九十一期 19c OCM之路-第三堂(20230711)考点9,上一期也讲了变更原因。

考点6:Instance tuning 实例调优

为某PDB或某实例设置最大使用2颗CPU资源:

sqlplus sys/oracle@pdbprod2 as sysdbaalter system set cpu_count=2;sqlplus sys/oracle@PROD4 as sysdbaalter system set cpu_count=2 scope=spfile;shut immediatestartup

总结

第四堂考试基本结束。
老规矩,知道写了些啥。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/9345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AutoSAR系列讲解(实践篇)9.2-信息发送的Filter机制

再强调一遍哈,这几节的内容大家看不懂没关系。都属于不常用的知识,仅作了解,假如用到了可以再挖出来看看。还有一点,很多的英文不太好翻译,比如这里的Filter,翻译成滤波,筛选我感觉都不太贴切,干脆就直接叫Filter了,之后应该会出现类似的英文,博主尽量想办法让大家理…

C语言每日一题:6.移除元素+合并两个有序数组。

第一题:移除元素 思路一: 一:暴力查找的方法: 1.找到对应val值的下标,返回数组的下标。 2.删除对应的下标,从前向后用后面覆盖前面。当后一个是数组最后一个数值是就赋值结束了(注意数组越界的问…

ASCII对照表

文章目录 介绍ASCII对照表 介绍 ASCII(American Standard Code for Information Interchange)是美国信息交换标准代码。基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。AS…

width: calc(~“100% - 267px“);动态css 调样式

.result-filtering {color: #8b8b8b;display: flex;// width: 82.6%;width: calc(~"100% - 267px");}

leetcode131. 分割回文串(java)

分割回文串 leetcode131. 分割回文串题目描述回溯算法 动态规划代码演示 回文字符串 leetcode131. 分割回文串 题目描述 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一…

[踩坑记] Linux环境下bitsandbytes安装是后报错解决

情境 在测试LLM Webui demo的时候,安装依赖pip install bitsandbytes0.40.0 后,python -m module name 时报错:CUDA Setup failed despite GPU being available. Please run the following command to get more information。 解决方法 从git hub 官方…

5.python设计模式【单例模式】

内容:保证一个类只有一个实例,并提供一个访问它的全局访问点角色: 单例(Singleton) UML图 举个例子: 需求:一个类只能实例化一个对象,不能实例化多个对象 from abc import abstract…

RocketMQ教程-(5)-功能特性-事务消息

事务消息为 Apache RocketMQ 中的高级特性消息,本文为您介绍事务消息的应用场景、功能原理、使用限制、使用方法和使用建议。 事务消息为 Apache RocketMQ 中的高级特性消息,本文为您介绍事务消息的应用场景、功能原理、使用限制、使用方法和使用建议。…

Kotlin与Java语法对比学习

定义变量 // Kotlin val i: Int 10 // 定义一个整数变量 val d: Double 10.0 // 定义一个双精度浮点数变量 val b: Boolean true // 定义一个布尔变量 val c: Char a // 定义一个字符变量 val s: String "Hello, World!" // 定义一个字符串变量 val arr: …

PostgreSQL查看数据库对象大小

PostgreSQL查看数据库对象大小 PostgreSQL查看数据库对象大小1、查看某个数据库大小2、查看多个数据库大小3、按顺序查看索引大小4、查看所有对象的大小 PostgreSQL查看数据库对象大小 1、查看某个数据库大小 select pg_size_pretty(pg_database_size(tzqdb));2、查看多个数据…

【已解决】VS报错C2760

在项目中增加第三方库的时候,出现了C2760的报错,常用路径都设置好了,判断可能是属性设置的问题,就查了一下,确实一下就改好了 操作流程: 项目右键后打开最下面的属性 属性——》C/C——》语言——》符合…

数据库触发器简介——修改数据的触发器、删除数据的触发器

1.修改数据的触发器 修改数据的触发器 create trigger tb_user_update_triggerafter update on tb_user for each row begininsert int user_logs(id,operation,operate_time,operate_id,operate_params)VALUES(null,update,now(),new.id,concat(更新之前的数据:i…

如何设置Axure中文版 Mac系统下axurerp10怎么设置成中文

有许多小伙伴肯定想知道axure rp 10怎么转换为中文版,接下来就为大家带来最详细的汉化教程,大家可以根据教程一步一步操作,保证可以汉化成功! 准备工作 安装好axurerp10 axurerp10汉化包 百度网盘链接: 百度网盘 请输入提取码 …

2023牛客暑期多校训练营2(D/E/F/H/I/K)

目录 D.The Game of Eating E.Square F.Link with Chess Game H.0 and 1 in BIT I.Link with Gomoku K.Box D.The Game of Eating 思路:倒着贪心。因为正着贪会导致一种局面:我选了当前喜爱值最大的菜,但是就算我不选这个菜&#xff0…

PostgreSQL实战-数据库迁移部署

PostgreSQL实战-数据库迁移部署 介绍 根据项目需求,我们需要将现有的PostgreSQL数据库重新部署到新的服务器上。由于项目本身就是基于PostgreSQL数据库构建的,因此数据库迁移将变得十分便捷。接下来,我将简要介绍我们的迁移步骤。 迁移步骤…

halcon线扫描相机平面交点检测--

目录 代码示例代码示例的逐句解释 以下是halcon中的代码示例 * This example shows the inspection of planar intersections of * 3D objects. The intersections are derived by intersecting the * reconstructed 3D object models with suitable planes, using the * o…

2.1 色彩空间

色彩发送器 色彩认知:光源是出生点,光源发射出光线,光线通过直射反射折射等路径最终进入人眼。但是人眼接收到光线后,人眼的细胞产生了一系列化学反应。由此把产生的新号传入大脑,最终大脑对颜色产生了认知感知。 光的…

如何把爱好变成事业?

如何把爱好变成事业? 目录 引言爱好与事业的关系如何把爱好变成事业 研究市场需求建立专业技能制定计划与目标 追求爱好的「变现」的利与弊 利:工作的乐趣与激情弊:压力与挑战 如何平衡爱好与事业 分清爱好与事业的界限建立时间管理和优先级…

数据结构-时间空间复杂度

目录 前言 1.什么是数据结构 2.什么是算法 3.数据结构和算法的重要性 1.算法的时间复杂度和空间复杂度 1.1算法效率 1.1.1如何衡量一个算法的好坏 1.1.2算法的复杂度 1.2时间复杂度 1.2.1时间复杂度的概念 1.2.2大O的渐进表示法 2.编程练习 2.1.1 排序遍历 2.1.2 2.1.3 单身狗解…

第一百一十六天学习记录:C++提高:STL-string(黑马教学视频)

string基本概念 string是C风格的字符串,而string本质上是一个类 string和char区别 1、char是一个指针 2、string是一个类,类内部封装了char*,管理这个字符串,是一个char型的容器。 特点: string类内部封装了很多成员方…