单实例非ASM中 CSS initialization等待事件解决
CSS initialization 代表有进程在向CSS进行注册。但数据库是单实例,且数据库也没有使用ASM,那么为什么会出现CSS initializatio
环境描述:Oracle 11.2.0.4 单实例
操作系统:Microsoft(R) Windows(R) Server 2003 Enterprise x64 Edition
以下是数据库AWR中的TOP等待事件:
Total Wait Time (sec)Wait Avg(ms)% DB timeWait Class
CSS initialization 代表有进程在向CSS进行注册。但数据库是单实例,且数据库也没有使用ASM,那么为什么会出现CSS initialization?
再进一步观察发现该等待事件虽然等待的次数不多,但是每次等待的事件却很长,对系统性能肯定会有影响,所以必须进行处理。
接下来分析为什么会出现该等待事件。首先检查了数据库的alert日志,发现日志里面没有出现相关的错误;再到数据库里检查最近一段时间内出现的该等待事件:
SQL> select sql_id, count(*), sum(time_waited)
from dba_hist_active_sess_history
where sample_time>to_date('201507080000','yyyymmddhh24mi')
and sample_time and event='CSS initialization' group by sql_id; SQL_ID COUNT(*) SUM(TIME_WAITED) ------------- ---------- ---------------- a6w8xy8jw0dpa 5 2026455 4ztfd8f5kk8jf 10 5463613 9jp5bc1p6dnfs 7 4367045 能观察到sql_id号,这样问题处理就容易多了,再继续把对应的sql找到: where sql_id='a6w8xy8jw0dpa'; DBID SQL_ID SQL_TEXT COMMAND_TYPE ---------- ------------- -------------------------------------------------------------------------------- ------------ 901678011 a6w8xy8jw0dpa select round(sum(FREE_MB)/1024,2) as d_asm_free from v$asm_diskgroup 3 SQL> select * from dba_hist_sqltext where sql_id='4ztfd8f5kk8jf'; DBID SQL_ID SQL_TEXT COMMAND_TYPE ---------- ------------- -------------------------------------------------------------------------------- ------------ 901678011 4ztfd8f5kk8jf select round( 100-100*sum(FREE_MB)/sum(TOTAL_MB),2) as d_asm_usePer from v$asm 3 SQL> select * from dba_hist_sqltext where sql_id='9jp5bc1p6dnfs'; DBID SQL_ID SQL_TEXT COMMAND_TYPE ---------- ------------- -------------------------------------------------------------------------------- ------------ 901678011 9jp5bc1p6dnfs select round((sum(TOTAL_MB)-sum(FREE_MB))/1024,2) as d_asm_use from v$asm_disk 3 from dba_users u, v$sql s where s.parsing_user_id=u.user_id and s.sql_id='a6w8xy8jw0dpa'; USER_ID USERNAME ---------- ------------------------------ 90 CQITJK 0 SYS SQL> select u.user_id,u.username from dba_users u, v$sql s where s.parsing_user_id=u.user_id and s.sql_id='4ztfd8f5kk8jf'; USER_ID USERNAME ---------- ------------------------------ 90 CQITJK SQL> select u.user_id,u.username from dba_users u, v$sql s where s.parsing_user_id=u.user_id and s.sql_id='9jp5bc1p6dnfs'; USER_ID USERNAME ---------- ------------------------------ 90 CQITJK 到此,问题基本清晰,由于应用对v$asm_diskgroup进行查询,产生了CSS initialization等待事件。数据库为单实例,且没有使用ASM,所以 用户的这个查询是无意义的,只需要开发人员去掉这条sql即可。 再补充一点,单实例、非ASM数据库,应用为什么会对v$asm_diskgroup进行查询?其实可以猜测,这就是统一开发的系统,为保证通用性,其中涉及了对一些RAC及ASM视图的查询,这里正好由于这个查询导致了问题。所以,,开发人员还是应该对数据库的特性进行充分了解。 如何将ASM中的数据文件复制到操作系统中 Oracle 11g RAC ASM磁盘全部丢失后的恢复 Oracle 11g从入门到精通 PDF+光盘源代码 RHEL6 ASM方式安装Oracle 11g R2 Oracle 10g 手工创建ASM数据库 Oracle 10g R2创建ASM实例Step By Step 本文永久更新链接地址:
SQL> select * from dba_hist_sqltext
发现相关的sql都是对v$asm_diskgroup视图进行查询,因为查询针对系统视图的,怀疑可能是系统自带的job执行的,接下来进行确认
SQL> select u.user_id,u.username
第一条语句的执行者包含SYS,这是由于我在排查问题是使用SYS用户执行过该语句,排除这个干扰后发现,问题sql是应用用户执行的。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'article discute de l'utilisation de l'instruction ALTER TABLE de MySQL pour modifier les tables, notamment en ajoutant / abandon les colonnes, en renommant des tables / colonnes et en modifiant les types de données de colonne.

L'article discute de la configuration du cryptage SSL / TLS pour MySQL, y compris la génération et la vérification de certificat. Le problème principal est d'utiliser les implications de sécurité des certificats auto-signés. [Compte de caractère: 159]

L'article traite des stratégies pour gérer de grands ensembles de données dans MySQL, y compris le partitionnement, la rupture, l'indexation et l'optimisation des requêtes.

L'article traite des outils de GUI MySQL populaires comme MySQL Workbench et PhpMyAdmin, en comparant leurs fonctionnalités et leur pertinence pour les débutants et les utilisateurs avancés. [159 caractères]

L'article discute de la suppression des tables dans MySQL en utilisant l'instruction TABLE DROP, mettant l'accent sur les précautions et les risques. Il souligne que l'action est irréversible sans sauvegardes, détaillant les méthodes de récupération et les risques potentiels de l'environnement de production.

L'article discute de la création d'index sur les colonnes JSON dans diverses bases de données comme PostgreSQL, MySQL et MongoDB pour améliorer les performances de la requête. Il explique la syntaxe et les avantages de l'indexation des chemins JSON spécifiques et répertorie les systèmes de base de données pris en charge.

L'article discute de l'utilisation de clés étrangères pour représenter les relations dans les bases de données, en se concentrant sur les meilleures pratiques, l'intégrité des données et les pièges communs à éviter.

L'article discute de la sécurisation MySQL contre l'injection SQL et les attaques brutales à l'aide de déclarations préparées, de validation des entrées et de politiques de mot de passe solides (159 caractères)
