oracle 调优篇 个人日志记录

前几天系统突然出现严重卡顿,部分模块卡死现象,最后排查下  发现是有些sql查询卡死  数据库连接数过大导致 ,最后按一下流程   查询出对应sql 做了下优化解决

----查看oracle DB的负载情况

​
----查看oracle DB的负载情况
SELECT *
FROM (SELECT A.INSTANCE_NUMBER,
A.SNAP_ID,
B.BEGIN_INTERVAL_TIME + 0 BEGIN_TIME,
to_char(END_INTERVAL_TIME, 'yyyy-MM-dd hh24:mm:ss') END_TIME,
ROUND(VALUE - LAG(VALUE, 1, '0')
OVER(ORDER BY A.INSTANCE_NUMBER, A.SNAP_ID)) "DB TIME"
FROM (SELECT B.SNAP_ID,
INSTANCE_NUMBER,
SUM(VALUE) / 1000000 / 60 VALUE
FROM DBA_HIST_SYS_TIME_MODEL B
WHERE B.DBID = (SELECT DBID FROM V$DATABASE)
AND UPPER(B.STAT_NAME) IN UPPER(('DB TIME'))
GROUP BY B.SNAP_ID, INSTANCE_NUMBER) A,
DBA_HIST_SNAPSHOT B
WHERE A.SNAP_ID = B.SNAP_ID
AND B.DBID = (SELECT DBID FROM V$DATABASE)
AND B.INSTANCE_NUMBER = A.INSTANCE_NUMBER)
WHERE TO_CHAR(BEGIN_TIME, 'YYYY-MM-DD') = TO_CHAR(SYSDATE, 'YYYY-MM-DD')
ORDER BY BEGIN_TIME;

​

--查询对应时间段的SQL
SELECT *
FROM (SELECT a.instance_number,
a.program,
a.sql_id,
a.session_state,
a.event,
count(*),
lpad(round(ratio_to_report(count(*)) over() * 100) || '%',
10,
' ') percent,
MIN(a.sample_time),
MAX(a.sample_time)
FROM dba_hist_active_sess_history a
WHERE a.sample_time BETWEEN
to_date('20210419 09:00:00', 'YYYYMMDD HH24:MI:SS') AND
to_date('20210419 10:04:00', 'YYYYMMDD HH24:MI:SS') and a.session_state!='ON CPU' and a.program is null
--and a.instance_number=2
GROUP BY a.program, a.sql_id, a.session_state, a.event,a.instance_number
ORDER BY count(*) DESC)
WHERE ROWNUM <= 100;

 

--根据SQLid查询具体执行情况
select * from v$sql aa where aa.SQL_ID='8qpacwjfagf1q';

--优化该sql

 

 

 

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
《mysql管理之道:性能调优、高可用与监控》由资深mysql专家撰写,以最新的mysql版本为基础,以构建高性能mysql服务器为核心,从故障诊断、表设计、sql优化、性能参数调优、mydumper逻辑、xtrabackup热备份与恢复、mysql高可用集群搭建与管理、mysql服务器性能和服务监控等方面多角度深入讲解了如何去管理与维护mysql服务器。 书中内容以实战为导向,所有内容均来自于笔者多年实践经验的总结和对新知识的拓展,同时也针对运维人员、dba等相关工作者会遇到的有代表性的疑难问题给出了实用的情景模拟,并给出了解决方案。不论你目前有没有遇到过此类问题,相信对你以后处理相关问题都会有所借鉴。本书适合所有希望构建和管理高性能、高可用性的mysql数据库系统的开发者和dba阅读。 目录 · · · · · · 前言 第一部分 mysql5.5 新特性 第1章 mysql5.5介绍 2 1.1 性能上的显著改变 2 1.1.1 mysql5.5默认存储引擎的调整 2 1.1.2 充分利用cpu多核的处理能力 7 1.1.3 提高刷新脏数量和合并插入数量,改善磁盘i/o处理能力 8 1.1.4 增加自适应刷新脏功能 9 1.1.5 让innodb_buffer_pool缓冲池中的热数据存活更久 9 1.1.6 innodb的数据恢复时间加快 11 1.1.7 innodb同时支持多个bufferpool实例 15 1.1.8 可关闭自适应哈希索引 17 1.1.9 在innodb中可选择使用内存分配程序 18 1.1.10 提高默认innodb线程并发数 21 1.1.11 预读算法的变化 22 1.1.12 首次在linux上实现了异步i/o 23 1.1.13 恢复组提交 24 1.1.14 innodb使用多个回滚段提升性能 26 1.1.15 改善清除程序进度 26 .1.1.16 添加删除缓冲和清除缓冲 27 1.1.17 控制自旋锁spin lock轮训间隔 28 1.1.18 快速创建、删除、更改索引 29 1.1.19 innodb支持创建压缩数据 30 1.1.20 可动态关闭innodb更新元数据的统计功能 37 1.2 安全性、稳定性的显著改变 38 1.2.1 复制功能加强 38 1.2.2 中继日志relay-log可自我修复 39 1.2.3 开启innodb严格检查模式 39 1.3 动态更改系统配置参数 39 1.3.1 支持动态更改独立表空间 39 1.3.2 支持动态更改innodb锁超时时间 40 1.4 innodb新参数汇总 40 1.5 同步复制新参数汇总 48 1.6 sql语句写法的改变 53 1.6.1 delete表连接语法改变 53 1.6.2 mysql5.5存储过程支持limit变量 54 1.7 mysql5.1升级为mysql5.5 55 1.7.1 采用mysql_upgrade升级授权表方式升级 55 1.7.2 直接安装mysql5.5,采用数据导出/导入方式升级 59 1.8 性能测试:mysql5.5与mysql5.1 60 第2章 半同步复制 62 2.1 半同步复制简介 62 2.2 半同步复制安装配置 63 2.3 参数说明 63 2.4 功能测试 64 2.4.1 如何验证半同步复制是否正常工作 64 2.4.2 半同步复制与异步复制的切换 65 2.5 性能测试 68 2.6 小结 70 第二部分 故障诊断与性能优化 第3章 故障诊断 72 3.1 影响mysql性能的因素 72 3.2 系统性能评估标准 73 3.2.1 影响linux服务器性能的因素 73 3.2.2 系统性能评估指标 74 3.2.3 开源监控和评估工具介绍 76 3.3 故障与处理 79 3.3.1 连接数过多导致程序连接报错的原因 79 3.3.2 记录子查询引起的宕机 84 3.3.3 诊断事务量突高的原因 87 3.3.4 谨慎设置binlog_format=mixed 90 3.3.5 未设置swap分区导致内存耗尽,主机死机 94 3.3.6 mysql故障切换之事件调度器注意事项 95 3.3.7 人工误删除innodb ibdata数据文件,如何恢复 97 3.3.8 update忘加where条件误操作恢复(模拟oracle闪回功能) 99 3.3.9 delete忘加where条件误操作恢复(模拟oracle闪回功能) 108 第4章 同步复制报错故障处理 112 4.1 最常见的3种故障 112 4.1.1 在master上删除一条记录时出现的故障 112 4.1.2 主键重复 114 4.1.3 在master上更新一条记录,而slave上却找不到 115 4.2 特殊情况:slave的中继日志relay-log损坏 116 4.3 人为失误 118 4.4 避免在master上执行大事务 119 4.5 slave_exec_mode参数可自动处理同步复制错误 120 4.6 如何验证主从数据一致 121 4.7 binlog_ignore_db引起的同步复制故障 123 4.8 mysql5.5.19/20同步一个bug 124 4.9 恢复slave从机上的某几张表的简要方法  126 4.10 如何干净地清除slave同步信息 127 第5章 性能调优 129 5.1 表设计 129 5.2 字段类型的选取 133 5.2.1 数值类型 134 5.2.2 字符类型 139 5.2.3 时间类型 141 5.2.4 小技巧:快速修改表结构 148 5.2.5 pt-online-schema-change在线更改表结构 152 5.2.6 mysql5.6在线ddl更改表测试 158 5.3 采用合适的锁机制 161 5.3.1 表锁的演示 161 5.3.2 行锁的演示 164 5.3.3 innodb引擎与myisam引擎的性能对比 166 5.4 选择合适的事务隔离级别 168 5.4.1 事务的概念 168 5.4.2 事务的实现 169 5.4.3 事务隔离级别介绍 171 5.5 sql优化与合理利用索引 177 5.5.1 如何定位执行很慢的sql语句 177 5.5.2 sql优化案例分析 178 5.5.3 合理使用索引 188 5.6 my.cnf配置文件调优 198 5.6.1 per_thread_buffers优化 198 5.6.2 global_buffers优化 200 5.6.3 query cache在不同环境下的使用 201 5.6.4 tuning-primer.sh性能调试工具的使用 205 5.6.5 72 gb内存的my.cnf配置文件 208 5.6.6 谨慎使用分区表功能 211 5.7 mysql5.6同步复制新特性详解 213 第6章 备份与恢复 223 6.1 冷备份 224 6.2 逻辑备份 224 6.2.1 mysqldump增加了一个重要参数 225 6.2.2 取代mysqldump的新工具mydumper 226 6.2.3 逻辑备份全量、增量备份脚本 229 6.3 热备份与恢复 230 第三部分 高可用集群管理 第7章 目前流行的4种高可用架构 236 7.1 采用mysql自带的replication架构 237 7.1.1 keepalived+mysql replication架构的搭建演示 237 7.1.2 mmm+mysql replication架构的搭建演示 241 7.2 heartbeat+drbd+mysql架构的搭建演示 249 7.3 红帽rhcs共享存储架构的搭建演示 254 7.3.1 安装过程 257 7.3.2 红帽rhcs集群的维护 265 7.4 mysql高可用集群ha解决方案的测试评估 267 第8章 批量管理服务器 270 8.1 开源工具pssh的使用方法 270 8.2 自己编写的ssh服务器批量管理工具 273 第四部分 监控 第9章 性能监控 278 第10章 服务监控 283 10.1 nagios搭建与维护 283 10.2 mysql数据库的监控脚本 288 第五部分 项目案例 第11章 项目案例讲解 292 11.1 数据碎片整理方案 292 11.2 用户信息表水平拆表方案 296 11.3 阿里巴巴中间件cobar水平拆表方案 299
1 Oracle9i 数据库系统概述 2007.5 2 提 纲 第一节 Oracle9i系统概述 第二节 Oracle9i数据库体系结构 第三节 Oracle9i数据库的模式(schema)对象 第四节 Oracle9i数据库的安装 第五节 Oracle9i数据库目录结构和注册表信息 第六节 Oracle9i数据库数据字典 第七节 Oracle9i分布式数据库体系结构 第八节 Oracle9i数据库的启动和关闭 3 第一节:Oracle9i系统概述 Oracle9i 是关系对象型数据库管理系统 。Oracle9i 提供以下三种版本: Oracle9i标准版:包括一套完全集成的易用管理 工具、完全分布式的复制能力以及web功能。适合 小型企业的单一服务器环境。 Oracle9i企业版:包括大数据量的在线事务处理 (OLTP)环境、查询密集型数据仓库以及要求苛 刻的互联网应用等。能够满足当今企业关键任务应 用的可用性与可伸缩性需要。 Oracle9i个人版:支持需要与Oracle9i标准版和 Oracle9i企业版完全兼容的单一用户开发与部署。 4 第二节:Oracle9i数据库体系结构 Oracle9i数据库的体系结构可以从以下四个 方面来理解: 物理存储结构 逻辑存储结构 内存结构 进程结构 5 一、物理存储结构 从数据的物理存储结构来看, Oracle9i数 据库由三类物理文件组成: 数据文件(datafile) 重做日志文件(redolog file) 控制文件(control file) 1、数据文件------存储了基表数据、索引数 据、回退数据、临时数据、以及数据字典 基表数据。每个数据库至少由一个或多个 数据文件组成。 6 2、重做日志文件------存储数据库的修改前、 修改后的信息以及事务标志。在数据库实例 (instance)恢复期间,Oracle使用重做日志 文件恢复所有用户对数据库所做的修改操作。 每个数据库必须拥有两个或两个以上的重做日 志文件。 3、控制文件------是一个二进制文件。存储了 数据库名、数据库的数据文件和联机重做日志 文件的名称和位置、数据库建立日期、数据库 的当前序列号、数据库检查点、数据库中表空 间名等信息。每个Oracle数据库要求至少有两 个或两个以上的控制文件。 7 除了以上三类物理文件之外,数据库中还包 含初始化参数文件、口令文件、归档的日志 文件等物理文件。 初始化参数文件在数据库启动和数据库性能 调优时使用,记录了数据库各参数的值。 归档日志文件只有在数据库运行在归档方式 时才有,是由ARCH归档进程将写满的重做 日志文件拷贝到指定的存储设备时产生的。 口令文件是为了使用操作系统认证Oracle用 户而设置的。 8 二、逻辑存储结构 从逻辑的角度来看,数据库由多个表空 间组成,每个表空间下存放了多个段,每 个段又分配了多个区,并且随着段中数据 的增加区的个数也会自动增加,每个区应 该由连续的多个数据块组成。 逻辑结构与物理结构的对应关系如图所示 9 数据库 表空间 段 区 数据块 数据文件 操作系统物理块 逻辑 物理 10 1、 表空间(tablespace) 表空间是一个逻辑存储单元,Oracle将数据 库所有数据文件所占的磁盘空间划分为一个 或多个表空间进行存储管理。 一个表空间可以跨越数据库的多个数据文 件,但一个数据文件只能属于一个表空间。 一个数据库至少包含SYSTEM表空间、 UNDOTBS表空间、TEMP表空间、USERS 表空间、INDX表空间等多个表空间,分别存 放数据字典基表数据、回退数据、临时数据、 基表数据、索引数据等数据。 11 2、 段(segment) 表空间的下一级逻辑存储单元称为段 (segment),一个段只能存储同一种模式 对象(schema object)。段数据不能跨越 表空间,但段数据可以跨越同一表空间的多 个数据文件。根据段中所存储的模式对象不 同,段分成以下几类: 数据段:存储表数据,当用户建立表时, Oracle自动建立数据段。数据段一般存储在 USERS表空间下。 12 索引段:存储数据库索引数据,当执行 CREATE INDEX语句建立索引时,Oracle自动 建立索引段。索引段一般存储在INDX表空间下 临时段:在执行查询、排序、等操作时, Oracle自动在TEMP表空间上创建一个临时段。 撤消段(回退段):记录数据库中所有事务 修改前的数据值,这些数据用于读一致性、回 退事务、恢复数据库实例等操作。 Oracle系统 将回退数据(撤消数据)存储在UNDOTBS表 空间下。 系统引导段:记录数据库数据字典的基表信 息。数据字典的基表一般存储在SYSTEM表空 间下。 13 3、 区(extent) Oracle
Oracle2: 1. 《Oracle8 优化技术》摘录 (第一章 安装) 2. 《Oracle8 优化技术》摘录 (第二章 内存-CPU) 3. 《Oracle8 优化技术》摘录 (第三章 输入-输出) 4. EXP、IMP 命令详解 5. Oracle Index 的三个问题 6. Oracle PL-SQL语言基础 7. Oracle的分布式管理 8. ORACLE的数据类型 9. Oracle数据库碎片整理 10.ORACLE性能调整1 11.ORACLE性能调整2 12.Oracle专家调优秘密 13.PL_SQL单行函数和组函数详解 14.PL-SQL 15.PLSQL异常处理初步 16.SQL语句性能调整原则 17.创建和使用分区的表 18.基于成本的优化器一般错误概念和问题 19.Delphi 3_0中连接数据库的三种方式 20.远程数据库的访问 21.监控数据库性能的SQL 22.简单实现数据库表空间的备份或迁移 23.简析REDO LOGFILE 24.理解和使用Oracle 8i分析工具-LogMiner 25.哪些初始化参数最影响Oracle系统性能 26.你的SQL语句在什么情况下使用全表扫描? 27.如何对CLOB行字段执行全文检索 28.如何让你的SQL运行得更快 29.如何使‘CREATE TABLE AS SELECT’能支持ORDER BY 30.删除表内重复记录的方法 31.数据库安全性策略 32.数据库的查询优化技术. 33.提高C-S系统性能的一些方法 34.提高ORACLE数据库系统import性能 35.外部联接的用法 36.性能调试的一般问题 37.优化 38.优化调整Oracle 8i数据库(从操作系统) 39.在Internet上运作公司是一项艰苦的任务--关键任务 40.在oracle中限制返回结果集的大小 41.在远端如何建立standby数据库 42.怎样分析你的SQL语句的效率 43.自动备份Oracle数据库 44.总结SQL语句中的优化提示 45.使用Database Configuration Assistant安装第二个数据库 46.Oracle 数据库向 MS SQL Server 7.0 的迁移 Oracle1: 1. Decode()函数使用技巧(NT+IIS+ASP+ORACLE) 2. Dual伪列 3. EXP、IMP 命令详解 4. Exp-Imp大量数据 5. Export-Import 使用技巧与常见错误 6. NULL 使用详解 7. Oracle for NT系统实用工具介绍 8. Oracle 和 mysql 的一些简单命令对比参照 9. Oracle8i和Microsoft SQL Server7_0比较 10. Oracle8的不安全因素及几点说明 11. Oracle常见错误代码 12. Oracle常用Script 13. Oracle常用数据字典 14. ORACLE回滚段管理(上) 15. ORACLE回滚段管理(下) 16. Oracle基于Client-Server的性能调整 17. Oracle数据库的安全策略 18. ORACLE数据库简介 19. Oracle数据库密码文件的使用和维护 20. Oracle数据库碎片整理 21. Oracle特殊包 22. Oradim工具的用法 23. PB如何连接Oracle数据库 24. ROLLBACK不能回滚的命令 25. 安装Oracle后,经常使用的修改表空间的SQL代码 26. 比较SQL Server与Oracle、DB2 27. 多个数据库时,如何设置默认数据库 28. 各种数据类型的比较 29. 漫谈oracle中的空值 30. 没有备份、只有归档日志,如何恢复数据文件 31. 哪些初始化参数最影响Oracle系统性能 32. 如何查看数据库的字符集 33. 如何启动ARCHIVELOG模式 34. 如何使‘CREATE TABLE AS SELECT’能支持ORDER BY ? 35. 如何使用归
文档信息 2 目录 4 1. 前言 9 1.1. 成就DBA介绍 9 1.2. 我应该成为一名DBA么? 9 1.3. 我怎样得到第一份DBA工作? 10 1.3.1. 提示#1:接受教育。 11 1.3.2. 提示#2:锻炼成为DBA。 11 1.3.3. 提示#3:获得认证。 11 1.3.4. 提示#4:利用你现有的技能。 12 1.3.5. 提示#5:利用现在的机会。 12 1.3.6. 提示#6:寻找较低级的DBA职位。 12 1.4. 我刚得到我的第一份工作!现在该怎样? 12 1.4.1. 步骤#1: 关系型数据库理论 12 1.4.2. 步骤#2: 彻底的学习查询语言 13 1.4.3. 步骤#3: 开始学习基本的数据库管理工作 13 1.4.4. 步骤#4: 阅读,阅读,再阅读 13 1.4.5. 步骤#5: 创建测试案例 13 1.4.6. 步骤#6: 找一个良师 14 1.4.7. 步骤#7: 参加本地用户群 14 1.5. 我如何能够从一名DBA初学者变为一个具有中级水平的DBA? 14 1.5.1. 步骤#1: 学习操作系统和你的服务器硬件 14 1.5.2. 步骤#2: 学习应用程序设计因为它与数据库相关 14 1.5.3. 步骤#4: 取得认证 14 1.5.4. 步骤#5: 获得一个资源库 15 1.5.5. 步骤#6: 开始在不同的新闻组和论坛上交流 15 1.6. 我如何从一名具有中级水平的DBA转变为一名高级DBA? 15 1.6.1. 步骤#1: 阅读所有的文档 16 1.6.2. 步骤#2: 成为一名专家 16 1.6.3. Route #3: 积极参加新闻组,论坛和用户组 16 1.6.4. Route #4: 写白皮书并且展示它们 16 1.6.5. 步骤#5: 成为解决Oracle问题的专家 16 1.6.6. 步骤#6: 成为性能调优的专家 16 1.6.7. 步骤#7: 成为承载能力计划的专家 17 1.6.8. 步骤#8: 密切关注新的技术 17 1.7. 结论 17 2. DBA工作概述 18 2.1. DBA职责 18 2.1.1. 决定数据库中的信息内容和结构 18 2.1.2. 决定数据库的存储结构和存取策略 18 2.1.3. 定义数据的安全性要求和完整性约束条件 18 2.1.4. 监控数据库的使用和运行 18 2.1.5. 数据库的改进和重组重构 18 2.2. DBA 日常工作——运行维护 19 2.2.1. ORACLE数据库管理员应按如下方式对ORACLE数据库系统做定期监控: 19 2.2.2. 每天的工作 20 2.2.3. 每周的工作 21 2.2.4. 每月的工作 22 DBA例行工作 22 2.3. 开发 DBA 工作 24 3. 操作系统和服务器硬件 25 3.1. 操作系统 25 3.2. 服务器硬件 25 4. 数据库安装与配置 26 4.1. 数据库安装 26 4.1.1. Unix下操作步骤 26 4.1.2. Linux下操作步骤 26 4.2. 数据库基本配置 26 4.2.1. 常用参数 26 4.2.2. 操作步骤 26 4.3. 数据库升级 26 4.3.1. 操作步骤 26 5. 数据库逻辑设计 27 6. 数据库物理设计 28 7. 数据常用参数管理 29 7.1. 内核参数的应用 29 8. 数据库对象管理 30 8.1. 日志管理 30 8.2. 表空间管理 31 8.3. 表管理 32 8.3.1. 创建表 32 8.3.2. 修改表 32 8.3.3. 删除表 32 8.4. 表分区管理: 33 8.4.1. 表分区定义 33 8.4.2. 数据分区存储的优点 33 8.4.3. 分区方法 34 8.4.4. 创建分区表 34 8.4.5. 查询分区 35 8.4.6. 添加分区 35 8.4.7. 删除分区 35 8.4.8. 修改分区 35 8.4.9. 移动分区 36 8.4.10. 拆分分区 36 8.4.11. 截断分区 36 8.4.12. 合并分区 36 8.4.13. 交换表分区 36 8.5. 索引 37 8.6. 约束 37 8.7. LOAD数据 38 8.8. reorganizing data 38 8.9. 其他技巧 39 9. 数据库安全管理 40 9.1. 定义 40 9.2. 安全内容及工作 40 9.2.1. 安全内容 40 9.2.2. 安全工作 40 9.3. 安全性策略 40 9.3.1. 系统安全性策略 40 9.3.2. 用户安全性策略 41 9.3.3. 数据库管理者安全性策略 41 9.3.4. 应用程序开发者的安全性策略 41 9.4. 用户管理 41 9.4.1. 数据库的存取控制 41 9.4.1.1. 用户鉴别 41 9.4.1.2. 用户的表空间设置和定额 42 9.4.1.3. 用户资源限制和环境文件 42 9.4.1.4. 用户环境文件 42 9.4.2. 创建用户 43 9.4.3. 修改用户 43 9.4.4. 删除用户 43 9.5. 口令管理 44 9.6. 权限和角色 44 9.7. 数据库审计 47 10. Oracle的性能优化 48 10.1. 性能优化概述 48 10.1.1. 性能优化的内容 48 10.1.2. 不同类型系统的优化 48 10.1.2.1. 在线事务处理信息系统(OLTP) 48 10.1.2.2. 数据仓库系统(Data Warehousing) 48 10.2. SQL语句的优化 48 10.2.1. SQL语句的优化规则 48 10.2.2. SQL语句优化的具体方法 49 10.2.2.1. 索引的使用 49 10.2.2.2. SQL语句排序优化 49 10.2.2.3. 选择联合查询的联合次序 49 10.2.2.4. SQL子查询的调整 49 10.3. Oracle 运行环境的优化 50 10.3.1. 内存结构的调整 50 10.3.1.1. 共享池 50 10.3.1.2. 数据缓冲区 50 10.3.1.3. 日志缓冲区 51 10.3.2. 物理I/O的调整 51 10.3.2.1. 在磁盘上建立数据文件前首先运行磁盘碎片整理程序 51 10.3.2.2. 不要使用磁盘压缩 51 10.3.2.3. 不要使用磁盘加密 51 10.3.2.4. 使用RAID 51 10.3.2.5. 分离面交换文件到多个磁盘物理卷 51 10.3.3. CPU的优化调整 51 10.3.3.1. 查看CPU的使用情况 51 10.3.3.2. 查看SQL语句的解析情况 52 10.3.3.3. 查看Oracle数据库的冲突情况 52 10.3.3.4. CPU的优化调整方法 52 10.3.4. 网络配置的优化 52 10.3.5. Oracle碎片整理 53 10.3.5.1. 碎片是如何产生的 53 10.3.5.2. 碎片对系统的影响 53 10.3.5.3. 自由范围的碎片计算 53 10.3.5.4. 自由范围的碎片整理 54 10.3.5.5. 段的碎片整理 54 10.3.6. Oracle系统参数的调整 55 10.3.6.1. Shared Pool and Library Cache Performance Tuning(共享池和Library Cache) 55 10.3.6.2. Buffer Cache Performance Tuning(数据库缓存调整) 55 10.3.6.3. Latch Contention(加锁或插销竞争) 55 10.3.6.4. Redo Log Buffer Performance Tuning(重写日志缓冲的调整) 55 10.3.6.5. Query Performance Tuning(查询效率的调整) 55 10.3.6.6. Temporary Tablespace Performance Tuning(临时表空间的调整) 56 10.4. 并发事件处理 56 10.4.1. 并发事件的产生 56 10.4.2. 锁 56 10.4.2.1. 锁的功能 56 10.4.2.2. 锁的类型 57 10.4.2.3. 锁的模式 58 10.4.2.4. 查看相关信息 59 10.5. 数据完整性 59 10.5.1. 数据完整性的类型 59 10.5.2. 完整性约束及其优点 59 10.5.3. 完整性约束的类型 59 10.5.3.1. NOT NULL约束 59 10.5.3.2. UNIQUE键约束 59 10.5.3.3. PRIMARY KEY约束 59 10.5.3.4. FOREIGN KEY约束 60 10.5.3.5. CHECK约束 60 10.5.4. 数据库触发器 60 10.6. 数据库性能优化工具 60 10.7. 常见问题处理 60 10.7.1. 序号生成器 60 10.7.2. 确定Oracle数据库中重复的记录 61 10.7.2.1. 自关联查询方法 61 10.7.2.2. GROUP BY/HAVING查询方法 61 10.7.2.3. Exception into子句 61 11. 备份与恢复 62 11.1. Oracle 归档模式 62 11.2. 备份 62 11.2.1. 备份方法 62 11.2.2. 完全数据库脱机备份 63 11.2.3. 联机部分数据库备份 63 11.2.4. 卸出(Export) /装入(Import) 63 11.2.5. 卸出数据(Export) 64 11.3. 恢复 65 11.4. 相关命令 65

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值