《OracleAWR与ASH性能报告深入解析》一数据库版本LEO1@LEO1select*fromv$version;BANNER---------------------------------..
《Oracle AWR与ASH性能报告深入解析》
一数据库版本
LEO1@LEO1> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
二 AWR性能诊断报告
AWR:Automatic Workload Repository 自动工作负载信息库
通常在诊断数据库性能的时候分三个阶段
第一阶段:SQL语句级性能优化
第二阶段:session级性能优化,这时我们可以用ASH来做分析
第三阶段:DB级性能优化,AWR就是数据库层性能诊断报告,当我们无法判断数据库哪里性能出现问题时我们可以做一个全身体检报告来找到我们瓶颈所在。
AWR机制:通过对系统整体动态采样收集快照信息,存储在SYSAUX表空间,每小时采样一次,可以保存7天,MMON进程实施,快照分析后写入DBA_HIST_%开头的数据字典。
AWR信息来源:DBA_HIST_%开头的数据字典,请见下图
LEO1@LEO1> select table_name from dictionary where table_name like 'DBA_HIST_%';
TABLE_NAME
------------------------------------------------
DBA_HIST_ACTIVE_SESS_HISTORY
DBA_HIST_ASH_SNAPSHOT
DBA_HIST_BASELINE
DBA_HIST_BASELINE_DETAILS
DBA_HIST_BASELINE_METADATA
DBA_HIST_BASELINE_TEMPLATE
DBA_HIST_BG_EVENT_SUMMARY
DBA_HIST_BUFFERED_QUEUES
DBA_HIST_BUFFERED_SUBSCRIBERS
DBA_HIST_BUFFER_POOL_STAT
DBA_HIST_CLUSTER_INTERCON
DBA_HIST_COLORED_SQL
DBA_HIST_COMP_IOSTAT
DBA_HIST_CR_BLOCK_SERVER
DBA_HIST_CURRENT_BLOCK_SERVER
DBA_HIST_DATABASE_INSTANCE
DBA_HIST_DATAFILE
DBA_HIST_DB_CACHE_ADVICE
…………………………………………………
109 rows selected.
AWR信息就是来自上面这些数据字典表,它是把这些表中数据进行汇总统计后生成HTML or TXT格式
LEO1@LEO1> select snap_id,name,value from DBA_HIST_SGA where snap_id>=173 and snap_id
SNAP_ID NAME VALUE
---------- ----------------------------------------------------------------------------------------------------------------------------------
173 Database Buffers 117440512
173 Fixed Size 2214856
173 Redo Buffers 8052736
173 Variable Size 385877048
174 Database Buffers 117440512
174 Fixed Size 2214856
174 Redo Buffers 8052736
174 Variable Size 385877048
上面这个例子显示了173-174快照中SGA的信息
OEM可以生成图形化性能分析图,UI版AWR
AWR基线:我们可以在数据库平稳正常的状态下创建AWR基线(参照物),在实际生产中可以作为性能指标曲线的一个参照物,有了基线对比,我们就可以很方便的了解到系统的一个真实的性能趋势。
AWR创建:sqlplus / as system @下面的脚本就可以创建AWR报告了
创建脚本目录:/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/awrrpt.sql
AWR报告分析说明
1. WORKLOAD REPOSITORY report for
2. DB Name
DB Id
Instance
Inst num
Startup Time
Release
RAC
EMSTA
433507400
emsta1
1
14-Aug-12 22:08
11.2.0.2.0
YES
Host Name
Platform
CPUs
Cores
Sockets
Memory (GB)
emsta1
Solaris[tm] OE (64-bit)
64
32
8
128.00
Snap Id
Snap Time
Sessions
Cursors/Session
Begin Snap:
6023
07-Sep-12 14:00:09
1788
2.8
End Snap:
6026
07-Sep-12 17:00:06
1793
2.9
Elapsed:
179.94 (mins)
DB Time:
79.25 (mins)
数据库名:EMSTA DB ID:433507400 实例名:emsta1 第一个实例 启动时间 版本 是RAC
主机名:emsta1 操作系统平台:Solaris 64位 64颗CPU 32核 内存:128GB
由上述硬件判断这是2台小机组成的RAC模式数据库,上面的是实例1,下面的是实例2,名称后缀不同。
起始快照id:6023
终止快照id:6026 快照与快照间隔1小时从14:00~17:00一共3小时采样信息
起始快照与终止快照间隔时间:180分钟
所有用户使用数据库时间总和(累加值):80分钟
起始时间有1788个会话,每个会话使用2.8个游标
结束时间有1793个会话,,每个会话使用2.9个游标
DB Name
DB Id
Instance
Inst num
Startup Time
Release
RAC
EMSTA
433507400
emsta2
2
14-Aug-12 22:08
11.2.0.2.0
YES
Host Name
Platform
CPUs
Cores
Sockets
Memory (GB)
emsta2
Solaris[tm] OE (64-bit)
64
32
8
128.00
Snap Id
Snap Time
Sessions
Cursors/Session
Begin Snap:
6023
07-Sep-12 14:00:09
1363
3.0
End Snap:
6026
07-Sep-12 17:00:06
1378
3.0
Elapsed:
179.94 (mins)
DB Time:
136.61 (mins)
实例2中各个部分的含义值和实例1相同,这里不再另外说明
2.cache size
Begin
End
Buffer Cache:
15,360M
15,360M
Std Block Size:
8K
Shared Pool Size:
6,272M
6,272M
Log Buffer:
111,456K
Instance1:数据库缓冲区15360M
共享池6272M
redo log 缓冲区111.456M
数据块大小8K
Buffer Cache:
13,696M
13,696M
Std Block Size:
8K
Shared Pool Size:
6,144M
6,144M
Log Buffer:
111,456K
Instance2:数据库缓冲区13696M
共享池6144M
redo log 缓冲区111.456M
数据块大小8K
2个实例的SGA有一点点的大小差异,但是差距不大。
3.Load profile
数据库负载属性信息 美秒 每个事物 每次执行 每次调用
Per Second
Per Transaction
Per Exec
Per Call
DB Time(s):
0.4
0.3
0.01
0.00
DB CPU(s):
0.4
0.2
0.01
0.00
Redo size:
15,275.9
8,983.0
Logical reads:
13,716.1
8,065.8
Block changes:
79.2
46.6
Physical reads:
365.3
214.8
Physical writes:
4.5
2.7
User calls:
232.7
136.8
Parses:
11.4
6.7
Hard parses:
0.3
0.2
W/A MB processed:
2.7
1.6
Logons:
0.0
0.0
Executes:
54.3
32.0
Rollbacks:
0.0
0.0
Transactions:
1.7
Instance1:逻辑读和物理读较多,是以读为主
Instance2:物理写较多,是以写为主
如果我们有一个基线值,就好比较性能优略了
Per Second
Per Transaction
Per Exec
Per Call
DB Time(s):
0.8
0.1
0.00
0.00
DB CPU(s):
0.4
0.1
0.00
0.00
Redo size:
102,788.5
11,594.5
Logical reads:
4,287.6
483.6
Block changes:
436.4
49.2
Physical reads:
100.5
11.3
Physical writes:
40.6
4.6
User calls:
261.7
29.5
Parses:
108.9
12.3
Hard parses:
0.1
0.0
W/A MB processed:
0.9
0.1
Logons:
3.1
0.4
Executes:
263.1
29.7
Rollbacks:
0.0
0.0
Transactions:
8.9
业务类型不同关注数据指标也不同
OLAP:关注IO指标
OLTP:关注内存 CPU指标
4.Top 5 Timed Foreground Events
Leonarding
2013.3.10
天津&spring
分享技术~成就梦想
Blog:
本文出自 “刘盛分享技术~成就梦想” 博客,请务必保留此出处

저장된 절차는 성능을 향상시키고 복잡한 작업을 단순화하기 위해 MySQL에서 사전 컴파일 된 SQL 문입니다. 1. 성능 향상 : 첫 번째 편집 후 후속 통화를 다시 컴파일 할 필요가 없습니다. 2. 보안 향상 : 권한 제어를 통해 데이터 테이블 액세스를 제한합니다. 3. 복잡한 작업 단순화 : 여러 SQL 문을 결합하여 응용 프로그램 계층 로직을 단순화합니다.

MySQL 쿼리 캐시의 작동 원리는 선택 쿼리 결과를 저장하는 것이며 동일한 쿼리가 다시 실행되면 캐시 된 결과가 직접 반환됩니다. 1) 쿼리 캐시는 데이터베이스 읽기 성능을 향상시키고 해시 값을 통해 캐시 된 결과를 찾습니다. 2) MySQL 구성 파일에서 간단한 구성, query_cache_type 및 query_cache_size를 설정합니다. 3) SQL_NO_CACHE 키워드를 사용하여 특정 쿼리의 캐시를 비활성화하십시오. 4) 고주파 업데이트 환경에서 쿼리 캐시는 성능 병목 현상을 유발할 수 있으며 매개 변수의 모니터링 및 조정을 통해 사용하기 위해 최적화해야합니다.

MySQL이 다양한 프로젝트에서 널리 사용되는 이유에는 다음이 포함됩니다. 1. 고성능 및 확장 성, 여러 스토리지 엔진을 지원합니다. 2. 사용 및 유지 관리, 간단한 구성 및 풍부한 도구; 3. 많은 지역 사회 및 타사 도구 지원을 유치하는 풍부한 생태계; 4. 여러 운영 체제에 적합한 크로스 플랫폼 지원.

MySQL 데이터베이스를 업그레이드하는 단계에는 다음이 포함됩니다. 1. 데이터베이스 백업, 2. 현재 MySQL 서비스 중지, 3. 새 버전의 MySQL 설치, 4. 새 버전의 MySQL 서비스 시작, 5. 데이터베이스 복구. 업그레이드 프로세스 중에 호환성 문제가 필요하며 Perconatoolkit과 같은 고급 도구를 테스트 및 최적화에 사용할 수 있습니다.

MySQL 백업 정책에는 논리 백업, 물리적 백업, 증분 백업, 복제 기반 백업 및 클라우드 백업이 포함됩니다. 1. 논리 백업은 MySQLDump를 사용하여 데이터베이스 구조 및 데이터를 내보내며 소규모 데이터베이스 및 버전 마이그레이션에 적합합니다. 2. 물리적 백업은 데이터 파일을 복사하여 빠르고 포괄적이지만 데이터베이스 일관성이 필요합니다. 3. 증분 백업은 이진 로깅을 사용하여 변경 사항을 기록합니다. 이는 큰 데이터베이스에 적합합니다. 4. 복제 기반 백업은 서버에서 백업하여 생산 시스템에 미치는 영향을 줄입니다. 5. AmazonRDS와 같은 클라우드 백업은 자동화 솔루션을 제공하지만 비용과 제어를 고려해야합니다. 정책을 선택할 때 데이터베이스 크기, 가동 중지 시간 허용 오차, 복구 시간 및 복구 지점 목표를 고려해야합니다.

mysqlclusteringenhancesdatabaserobustness andscalabilitydaturedingdataacrossmultiplenodes.itusesthendbenginefordatareplicationandfaulttolerance, highavailability를 보장합니다

MySQL에서 데이터베이스 스키마 설계 최적화는 다음 단계를 통해 성능을 향상시킬 수 있습니다. 1. 인덱스 최적화 : 공통 쿼리 열에서 인덱스 생성, 쿼리의 오버 헤드 균형 및 업데이트 삽입. 2. 표 구조 최적화 : 정규화 또는 정상화를 통한 데이터 중복성을 줄이고 액세스 효율을 향상시킵니다. 3. 데이터 유형 선택 : 스토리지 공간을 줄이기 위해 Varchar 대신 Int와 같은 적절한 데이터 유형을 사용하십시오. 4. 분할 및 하위 테이블 : 대량 데이터 볼륨의 경우 파티션 및 하위 테이블을 사용하여 데이터를 분산시켜 쿼리 및 유지 보수 효율성을 향상시킵니다.

tooptimizemysqlperformance, followthesesteps : 1) 구현 properIndexingToSpeedUpqueries, 2) useExplaintoAnalyzeanDoptimizeQueryPerformance, 3) AdvertServerConfigUrationSettingstingslikeInnodb_buffer_pool_sizeandmax_connections, 4) uspartOflEtOflEtOflestoI


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

드림위버 CS6
시각적 웹 개발 도구

Dreamweaver Mac版
시각적 웹 개발 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
