数据中心数据库管理与sql优化技术交流.docx

上传人:b****2 文档编号:891982 上传时间:2023-04-30 格式:DOCX 页数:52 大小:454.84KB
下载 相关 举报
数据中心数据库管理与sql优化技术交流.docx_第1页
第1页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第2页
第2页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第3页
第3页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第4页
第4页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第5页
第5页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第6页
第6页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第7页
第7页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第8页
第8页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第9页
第9页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第10页
第10页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第11页
第11页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第12页
第12页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第13页
第13页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第14页
第14页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第15页
第15页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第16页
第16页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第17页
第17页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第18页
第18页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第19页
第19页 / 共52页
数据中心数据库管理与sql优化技术交流.docx_第20页
第20页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据中心数据库管理与sql优化技术交流.docx

《数据中心数据库管理与sql优化技术交流.docx》由会员分享,可在线阅读,更多相关《数据中心数据库管理与sql优化技术交流.docx(52页珍藏版)》请在冰点文库上搜索。

数据中心数据库管理与sql优化技术交流.docx

数据中心数据库管理与sql优化技术交流

数据中心数据库日常使用与维护技术交流

省金融计算中心黄万东

目录

1、数据下载系统日常检查与查询3

(1)查目前加载的作业3

(2)查哪些文件已经传输到服务器上但未加载4

(3)查某个文件加载到哪天以及状态4

(4)查文件成功加载最新情况4

(5)查失败的作业与失败原因4

(6)查某个文件加载状态、加载开始时间与结束时间5

(7)查某个文件加载的时长6

2、数据下载系统日常特殊处理6

(1)加载异常的处理6

(2)启停7

(3)手工解密文件8

(4)数据文件的清理8

3、数据库服务器性能查看8

(1)常用性能监控命令8

a)AIX的topas8

b)linux的top13

c)ps15

d)sar16

e)vmstat16

f)iostat19

(2)nmon数据21

(3)AWR(AutomaticWorkloadRepository)数据23

(4)ASH(ActiveSessionHistory)数据23

4、日常数据库常用语句23

(1)查目前连接到哪个实例23

(2)查目前各个表空间大小、已经使用大小、剩余大小23

(3)查diskgroup大小、剩余大小25

(4)查表空间的数据文件25

(5)查表或索引占用的空间大小25

(6)查超过300MB的表或索引26

(7)查某个表是否分区26

(8)查某个表是否有子分区27

(9)查分区表的索引是否是local分区27

(10)查哪个表空间占用大却没有分区28

(11)查某个表的索引列和索引是否唯一性28

(12)查哪个索引状态不正确29

(13)查某个用户正在跑的sql29

(14)查客户营销系统bbrun用户非web应用正在运行的sql29

(15)查客户营销系统bbrun用户web应用正在运行的sql30

(16)如何杀某个session30

(17)查表是否被锁30

(18)查回滚段的使用31

(19)查询表的描述32

(20)查询列的描述32

(21)建主键时如何指定表空间33

(22)误删除一张表,如何恢复33

(23)在函数中怎么执行DDL语句33

(24)导出用户的建表语句34

(25)导出用户的建索引语句34

(26)导出用户的建视图语句34

(27)导出用户的建存储过程语句34

(28)导出用户的建函数语句34

(29)导出用户的建序列语句34

5、sql语句优化34

(1)执行计划34

(2)何时要对表进行分析34

(3)如何对一张表进行分析35

(4)sql执行计划35

(5)hint35

(6)用EXISTS替代IN;用NOT EXISTS替代NOT IN35

(7)并行度35

(8)RAC影响35

(9)索引监控35

(10)表和索引的压缩存储的研究35

(11)增加序列的cache值,建议cache值不少于2035

6、日常编写sql应该注意的地方36

1、数据下载系统日常检查与查询

(1)查目前加载的作业

登陆10.241.1.16的cpdds用户,在/DDS_DATA/DDS/ETL/bin目录下执行etlctlstatus

LPendingQue带-的作业表示数据从数据文件解密并加载到cpdds_sdata用户。

TPendingQue带#的作业表示数据从cpdds_sdata用户下merge到cpdds_pdata用户。

进一步查看作业

(2)查哪些文件已经传输到服务器上但未加载

可以通过查看/DDS_DATA/DDS/ETL/run目录下的文件

一直未加载的文件需要联系数据下载系统项目组进行处理。

(3)查某个文件加载到哪天以及状态

selectjob_name,LAST_TXDATE,JOB_STATUSfromcpdds_etl.etl_jobwherejob_namelikeupper('sav_indpty_tx_stat%t98_indpty_tx_stat');

(4)查文件成功加载最新情况

selecta.etl_job_name,b.JOB_FREQUENCY,max(to_char(a.txdate,'YYYYMMDD'))txdate

fromcpdds_etl.etl_job_loga,cpdds_etl.etl_jobb

wherea.etl_job_name=b.job_name

anda.etl_job_namelike'%#%'

anda.STATUS='D'

groupbya.etl_job_name,b.JOB_FREQUENCY

orderbyb.JOB_FREQUENCY,max(to_char(a.txdate,'YYYYMMDD'))desc,a.etl_job_name;

其中STATUS='D'表示数据加载成功;JOB_FREQUENCY=‘D’的是每天加载;JOB_FREQUENCY=‘M’是每月加载;JOB_FREQUENCY=‘Y’是每年加载。

(5)查失败的作业与失败原因

colRETMSGfora60

coletl_job_namefora56

select/*+ORDER(B,A)*/a.etl_job_name,max(to_char(a.txdate,'YYYYMMDD'))txdate,max(to_char(a.end_time,'YYYYMMDDHH24:

MI:

SS'))end_datetime,substr(RETMSG,1,30)RETMSG

fromcpdds_etl.etl_job_loga,cpdds_etl.etl_jobb

wherea.etl_job_name=b.job_name

anda.etl_job_namelike'%#%'

andb.JOB_FREQUENCY='D'anda.STATUS='F'

groupbya.etl_job_name,substr(RETMSG,1,30)

orderby2asc,3asc;

(6)查某个文件加载状态、加载开始时间与结束时间

select/*+ORDER(B,A)*/a.etl_job_name,to_char(a.txdate,'YYYYMMDD')txdate,to_char(START_TIME,'YYYYMMDD-HH24:

MI:

SS'),to_char(END_TIME,'YYYYMMDD-HH24:

MI:

SS'),a.status

fromcpdds_etl.etl_job_loga,cpdds_etl.etl_jobb

wherea.etl_job_name=b.job_name

anda.etl_job_namelike'%#%'

--anda.STATUS='D'

andto_char(a.txdate,'YYYYMMDD')in('20110320','20110321')

andb.JOB_FREQUENCY='D'

--groupbya.etl_job_name,to_char(a.txdate,'YYYYMMDD')

orderby2desc,a.etl_job_name;

(7)查某个文件加载的时长

select/*+ORDER(B,A)*/a.etl_job_name,to_char(a.txdate,'YYYYMMDD')txdate,ROUND(TO_NUMBER(END_TIME-START_TIME)*24*60*60)do_time

fromcpdds_etl.etl_job_loga,cpdds_etl.etl_jobb

wherea.etl_job_name=b.job_name

anda.etl_job_namelike'%#%'

--anda.STATUS='D'

andto_char(a.txdate,'YYYYMMDD')in('20110320','20110321')

andb.JOB_FREQUENCY='D'

orderby2desc,a.etl_job_name;

查询结果单位是秒。

2、数据下载系统日常特殊处理

(1)加载异常的处理

目前,数据下载系统从数据文件解密并加载到cpdds_sdata的过程一般不会出错,而碰到结息数据、小额管理费、每月第一天这样的大数据量时,从cpdds_sdata到cpdds_pdata的过程处理很慢,并时常出错(常见是临时表空间和回滚段不足;或进程僵死),需要人工杀session和进程,并且重跑数据。

1)查出对应的session,杀掉session

2)杀对应的进程;

3)等待数据库回滚结束

4)修改cpdds_etl.etl_job_log

updatecpdds_etl.etl_job_logasetstatus='F',end_time=sysdate

whereetl_job_name=upper('cre_indpty_prod_stat#t98_indpty_prod_stat')andto_char(a.txdate,'YYYYMMDD')='20111002';

将状态改成失败(F)

5)修改cpdds_etl.etl_job

updatecpdds_etl.etl_jobasetJOB_STATUS='F'

wherejob_name=upper('cre_indpty_prod_stat#t98_indpty_prod_stat');

将状态改成失败(F),该作业才会重新启动。

6)修改控制文件

cd/DDS_DATA/DDS/ETL/run

mvcre_indpty_prod_stat#t98_indpty_prod_stat_20111002.ctl.tscre_indpty_prod_stat#t98_indpty_prod_stat_20111002.ctl,即将对应作业最后的.ts去掉。

7)作业重新加载

数据下载系统会根据控制文件和cpdds_etl.etl_job的状态重新启动该作业的加载。

(2)启停

1)启动etl

cd/DDS_DATA/DDS/ETL/bin

etlctlstart(启动过程需要输入用户和密码)

2)关闭etl

cd/DDS_DATA/DDS/ETL/bin

etlctlstop

3)启动GTP

cd/DDS_DATA/GTPServer

./gtp.shstop

4)关闭GTP

cd/DDS_DATA/GTPServer

./gtp.shstop

(3)手工解密文件

有时,客户营销系统需要单独处理数据下载系统的某些文件,因此需要手工将数据下载系统的文件先解密,解密前建议建一个目录用于保存解密前后的文件,数据下载系统处理完的数据文件保存在/DDS_DATA/DDS/ETL/success/YYYYMMDD目录下,数据文件拷贝后,到/DDS_DATA/DDS/ETL/bin目录下,执行decrypt,然后根据屏幕提示操作,操作过程需要输入用户和密码。

(4)数据文件的清理

若文件系统/CPDDS_DATA使用率超过85%,可以删除/DDS_DATA/DDS/BAK/99/YYYYMMDD和/DDS_DATA/DDS/BAK/02/YYYYMMDD下的文件(/DDS_DATA/DDS/BAK/99目录是转发给省邮政的文件,/DDS_DATA/DDS/BAK/02是转发给厦门分行的文件)。

也可以删除/DDS_DATA/DDS/ETL/success/YYYYMMDD下的文件,该目录是福建省分行处理成功的文件。

3、数据库服务器性能查看

目前数据中心采用2台IBMP550小型机做为数据库服务器,其中A机IP地址为10.241.1.12(数据库vip地址是10.241.1.13),B机IP地址是10.241.1.14(数据库vip地址是10.241.1.15)。

目前总行数据下载系统连接到A机数据库,客户营销系统web和应用连接到B机数据库,平常要查看数据库服务器的性能,必须登录到相应的服务器上查看,在10.241.1.16上执行vmstat看的是应用服务器的性能,而不是数据库服务器的性能,目前A机和B机登陆的用户是view/view1。

(1)常用性能监控命令

a)AIX的topas

topas下令用于监控种种体系资源,如CPU的应用情况,CPU变乱和行列,内存和换页空间的应用,磁盘性能,网络性能以及NFS统计等。

它还会陈诉指派给差别WLM类的进程对体系资源的损耗情况。

它还能陈诉体系中最热点的进程和事变量管理器(WLM)的热点类。

有关WLM类信息只有在WLM激活时才会表现。

topas下令将热点进程界说为那些应用大宗CPU工夫的进程。

topas下令没有作日记的选项,全部信息都是及时的。

CPU使用情况显示一个条形图表来表示累积的CPU使用情况。

如果有多个CPU,按c键两次就可显示CPU列表。

仅按c键一次会关闭这个部分。

User%显示以用户方式执行的程序所使用的CPU的百分数;(缺省按用户%排序)

Kern%显示以内核方式执行的程序所使用的CPU的百分数;

Wait%显示用于等待IO的时间的百分数;

Idle%表示CPU空闲时间的百分数。

网络接口显示了网络接口的列表。

所显示接口的最大数目是正被监视的接口数目,正如-n标志指定的那样。

按n键可关闭此部分。

再按一次n键就会显示一行所有网络接口活动的报告摘要。

两个报告都显示下列字段:

Interf网络接口的名称。

KBPS在监视时间间隔内每秒钟以MB为单位的总吞吐量。

这个字段是每秒接收到的千字节和发送的千字节的总和。

I-Pack在监视时间间隔内每秒钟接收到的数据包的数目。

O-Pack在监视时间间隔内每秒钟发送的数据包的数目。

KB-In在监视时间间隔内每秒钟接收到的千字节的数目。

KB-Out在监视时间间隔内每秒钟发送的千字节的数目。

磁盘显示了物理磁盘的列表。

按d键可关闭这个部分。

再按一次d键就会显示一行所有物理磁盘活动的报告摘要。

两个报告都显示下列字段:

Disk物理磁盘的名称。

Busy%表示物理磁盘活动时间的百分比(驱动器带宽使用)。

KBPS在监视时间间隔内每秒钟读和写的千字节的数目。

此字段是KB-Read和KB-Writ的总和。

TPS每秒钟发送到物理磁盘的传输的数目。

传输是对物理磁盘的I/O请求。

多个逻辑请求可组合成对磁盘的单个I/O请求。

传输大小不确定。

KB-Read每秒钟从物理磁盘读取的千字节的数目。

KB-Writ每秒钟写到物理磁盘的千字节的数目。

进程显示了进程的列表。

按p键可关闭此部分。

按监视时间间隔内进程的CPU使用情况来对进程排序。

对于每一进程会显示下列字段:

Name在进程中执行的可执行程序的名称。

名称已被除去任何路径名和参数信息并被截断到9个字符的长度。

PID进程的进程标识。

CPU%CPU使用情况

在监视时间间隔内进程的平均CPU使用情况。

第一次显示进程时,这个值表示整个进程阶段平均CPU使用情况。

PgSp分配给此进程的调页空间的大小。

这可被认为是进程覆盖区的一种表达式,但并不包括用来保持可执行程序和它依赖的任何共享库的内存。

Owner拥有此进程的用户的用户名。

EVENTS/QUEUES

Cswitch在监视时间间隔内每秒上下文切换的数量。

Syscalls在监视时间间隔内每秒执行的系统调用的数量。

Reads在监视时间间隔内每秒执行的read系统调用的数量。

Writes在监视时间间隔内每秒执行的write系统调用的数量。

Forks在监视时间间隔内每秒执行的fork系统调用的数量。

Execs在监视时间间隔内每秒执行的exec系统调用的数量。

Runqueue准备运行但需要等待处理器可用的平均线程数目。

Waitqueue正在等待页面调度完成的平均线程数目。

FILE/TTY显示所选文件与tty统计信息的每秒频率。

Readch在监视时间间隔内read系统调用每秒读的字节数。

Writech在监视时间间隔内write系统调用每秒写的字节数。

Rawin在监视时间间隔内从TTY中每秒读取的原始字节数。

Ttyout在监视时间间隔内每秒写入TTY中的字节数。

Igets在监视时间间隔内每秒调用信息节点查找例程的数量。

Namei在监视时间间隔内每秒调用路径名查找例程的数量。

Dirblk在监视时间间隔内被目录搜索例程每秒扫描的目录块数目。

PAGING显示页面调度统计信息的每秒频率。

Faults在监视时间间隔内每秒页面出错的数量。

这包括不能激活页面调度的页面故障。

Steals在监视时间间隔内每秒钟有物理内存4K帧被虚拟内存管理器占用。

PgspIn在监视时间间隔内每秒钟从调页空间读取4K页面的数量。

PgspOut在监视时间间隔内每秒钟把4K页面写入调页空间的数量。

PageIn在监视时间间隔内每秒钟读取4K页面的数量。

这包括与从文件系统读取有关的页面调度活动。

从这个值中减去PgspIn就可得到在监视时间间隔内每秒钟从文件系统读取的4K页面的数量。

PageOut在监视时间间隔内每秒钟写4K页面的数量。

这包括与写入文件系统有关的页面调度活动。

从这个值中减去PgspOut就可得到在监视时间间隔内每秒钟写入文件系统的4K页面的数量。

Sios在监视时间间隔内虚拟内存管理器每秒钟发出的I/O请求的数目。

MEMORY显示实际内存大小与内存使用的分布情况。

Real,MB以MB为单位的实际内存大小。

%Comp当前分配给计算页面帧的实际内存的百分数。

计算页面帧通常是那些被调页空间支持的帧。

%Noncomp当前分配给非计算页面帧的实际内存的百分数。

非计算页面帧通常是那些被文件空间(可以是数据文件、可执行文件或共享库文件)支持的帧。

%Client当前被分配用来高速缓存远程安装的文件的实际内存的百分数。

PAGINGSPACE显示调页空间的大小及利用情况。

Size,MB系统上所有调页空间的总和,以MB为单位。

%Used当前在使用的调页空间占所有的百分数。

%Free当前未使用的调页空间占所有的百分数。

NFS(calls/sec)显示每秒调用的NFS状态

ServerV2

ClientV2

ServerV3

ClientV3

b)linux的top

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

统计信息区

前五行是系统整体的统计信息。

第一行是任务队列信息,同uptime命令的执行结果。

其内容如下:

up系统运行时间,格式为时:

user当前登录用户数

loadaverage系统负载,即任务队列的平均长度。

三个数值分别为1分钟、5分钟、15分钟前到现在的平均值。

第二、三行为进程和CPU的信息。

当有多个CPU时,这些内容可能会超过两行。

内容如下:

Tasks:

进程总数

running正在运行的进程数

sleeping睡眠的进程数

stopped停止的进程数

zombie僵尸进程数

Cpu(s):

us用户空间占用CPU百分比

y内核空间占用CPU百分比

ni用户进程空间内改变过优先级的进程占用CPU百分比

id空闲CPU百分比

wa等待输入输出的CPU时间百分比

hi

si

最后两行为内存信息。

内容如下:

Mem:

物理内存总量

used使用的物理内存总量

free空闲内存总量

buffers用作内核缓存的内存量

Swap:

交换区总量

used使用的交换区总量

free空闲交换区总量

cached缓冲的交换区总量。

内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,该数值即为这些内容已存在于内存中的交换区的大小。

相应的内存再次被换出时可不必再对交换区写入。

进程信息区

统计信息区域的下方显示了各个进程的详细信息

序号列名含义

PID进程id

USER进程所有者的用户名

PR优先级

NInice值。

负值表示高优先级,正值表示低优先级

VIRT进程使用的虚拟内存总量,单位kb。

VIRT=SWAP+RES

RES进程使用的、未被换出的物理内存大小,单位kb。

RES=CODE+DATA

SHR共享内存大小,单位kb

S进程状态。

D=不可中断的睡眠状态

R=运行

S=睡眠

T=跟踪/停止

Z=僵尸进程

%CPU上次更新到现在的CPU时间占用百分比

%MEM进程使用的物理内存百分比

TIME+进程使用的CPU时间总计,单位1/100秒

COMMAND命令名/命令行

c)ps

列出最占资源20个进程:

ps-ef|sort+3-4nr|head-20

linux:

AIX:

d)sar

AIX下只有root允许执行sar命令:

linux下:

e)vmstat

AIX:

参数

含义

备注

kthr

内核进程的状态

r

运行队列中的进程数,在一个稳定的工作量下,应该少于5

运行的进程比较多,系统很繁忙,当这个值超过了CPU数目,就会出现CPU瓶颈了

b

等待队列中的进程数(等待I/O),通常情况下是接近0的

memory

虚拟和真实内存的使用信息

avm

活动虚拟页面,在进程运行中分配到工作段的页面空间数

free

空闲列表的数量.一般不少于120,当fre少于120时,系统开始自动的kill进程去释freelist

page

页面活动的信息

re

页面i/o的列表

pi

从页面输入的页(一般不大于5)

po

输出到页面的页

fr

空闲的页面数(可替换的页面数)

sr

通过页面置换算法搜索到的页面数

cy

页面置换算法的时钟频率

faults

在取样间隔中的陷阱及中断数

in

设备中断

sy

系统调用中断

cs

内核进程前后交换中断

CPU

cpu的使用率

us

用户进程的时间

一般us+sy在单用户系统中不大于

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 考试认证 > 财会金融考试

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2