Professionnel - Page 4
-
Création d'une logical standby
-
Concept stockage Cassandra - clé/colonnes
Les données sont disposées sur des lignes (qu'on appelle partitions), et au sein de chaque partition on trouve une série de colonnes avec #col/cellule qu'on peut assimiler à une série de clé/valeur.
On peut remarquer qu'une partition peut contenir de 1 à N colonnes, la limite physique de N étant de 2 milliards (2.109), ce qui nous laisse beaucoup de marge. Une différence avec une base de données SQL classique est qu'ici, C* ne réserve pas d'espace en avance pour chaque colonne. La création de colonne se fera lorsqu'on insérera de nouvelles données, dynamiquement.
Une table est un ensemble de :
<Clé de partition, <Clé de colonne,cellule>>
-
Configuration d'un cluster Cassandra ~ recommandations
Pour un cluster en environnement de projet, on choisir la class : SimpleSnitch
Pour un cluster en environnement de prod, on choisir la class : GossipingPropertyFileSnitch
Note:
Ces class sont définies dans le fichier de configuration /etc/cassandra/conf/cassandra.yaml
Si les nœuds du cluster sont dans le même VLAN, on choisira la class : SimpleStrategy
Si les nœuds du cluster sont dans des datacenters différents / des VLAN différents / des sites de production différents, on choisira la class : NetworkTopologyStrategy
Note :
Cette class doit être définie lors du création du keyspace (idem base de données).
Exemple :
CQLSH>create keyspace sample_demo with replication = {'class':'SimpleStrategy','replication_factor':3};
-
CAP sur le NOSQL
-
Ajout d'un noeud dans un cluster Oracle RAC
-
ajouter un disque dans un groupe de disques
- Adding Disks to a Disk Group
- Dropping Disks from Disk Group
- Replacing Disks in Disk Group
- Renaming Disks in Disk Group
- Resizing Disks in Disk Group
- Changing Diskgroup Attributes
- Undropping Disks in Disk Group
- Creating ADVM Volumes
https://onlinedbalearning.blogspot.com/2018/07/altering-asm-disk-groups.html
-
ils sont où les disques ASM?
L’OLR contient donc entre autre le DiscoveryString qui va permettre de retrouver le spfile pour le démarrage d’ASM.
https://proracle.fr/index.php/43-olr-ocr-voting
-
Oracle RAC -> Installation - configuration
Network, user & group, etc host file configuration
-
Script pré-chech pour upgrade Oracle de 12.1 à 12.2
Script perso pour lister les checks à faire sur toutes les bases Oracle d'un serveur avant la montée de version en 12.2.
-
Détecter les lignes migrées avec AWR
Détecter les lignes migrées avec AWR
https://easyteam.fr/detecter-les-lignes-migrees-avec-awr/
http://www.dba-oracle.com/t_identify_chained_rows.htm
https://www.akadia.com/services/ora_chained_rows.html
-
Always on
-
Script find_sql
Trouver le SQL avec sa hash value...
-
Tuning PGA and Temporary Space
Savoir si la pga est assez grande? sinon exécution dans TBS temp pas bon.
-
Créer sql profile à partir du sql id
-
Télécharger et installer SQLT
http://www.br8dba.com/how-to-install-sqlt/
All About the SQLT Diagnostic Tool (Doc ID 215187.1)
-
Créer un sql profile à partir d'un plan d'exéuction
Scripts to deal with SQL Plan Baselines, SQL Profiles and SQL Patches
script à lancer sous SQLT :
coe_xfr_sql_profile.sql
-
PLan d'exécution d'une requête Oracle
Méthode classique :
-
récupérer un historique de session
spool hist_sess.html
set markup html on
alter session set nls_timestamp_format='YYYY-MM-DD HH24:MI';
select * from DBA_HIST_ACTIVE_SESS_HISTORY where sample_time between '2020-03-09 18:00' and '2020-03-12 17:01';
set markup html off
spool off -
AWR génération d'un rapport automatique pour chaque snap
set serveroutput on size unlimited
spool awr_8408_8478.txt
declare
dbid number := 644588240; -- a remplacer par ton dbid
instance_id number := 1;
l_premier number := 8408;
l_dernier number := 8478;
end_id number;
begin
for start_id in l_premier..l_dernier loop
end_id := start_id + 1;
for awrreport in ( select output from table(dbms_workload_repository.awr_report_html(dbid,instance_id,start_id,end_id)) )
loop
dbms_output.put_line(awrreport.output);
end loop;
end loop;
end;
/
spool off
-
Tracer un sql id
tracer un sql id :
exec dbms_sqldiag.dump_trace(p_sql_id=>'tamere',p_child_number=>0,p_component=>'Compiler',p_file_id=>'');
-
Récupérer les infos de stats en base
Pour connaître les infos des stats dans la base Oracle.
-
Les plans d'exécution sont historisés
Désolé J-F tu avais raison :
select SQL_ID,COST,TIME from DBA_HIST_SQL_PLAN
-
Tuning Latch Contention: Cache-Buffers-Chain Latches
Researching Further
Re-querying
v$session_wait
, I see that a couple of latches are hot. I will consider one latch children with latch address19875043200
as an example, and drill down further.Hang Those Buffers!
Next, I needed to find buffers protected by these latch children, and then find the buffers causing latch contention. Many such hash buckets (and so, numerous buffers) are protected by a latch children.
I don’t favour the above script, since its performance is not optimal. It is much easier to dump the blocks and convert them to object ids. Let’s dump these three blocks.
Now I can query
dba_objects
to find theobject_names
.https://blog.pythian.com/tuning-latch-contention-cache-buffers-chain-latches/
-
Identifying locked objects and killing the session in DB
SELECT oracle_username || ' (' || s.osuser || ')' username, s.sid || ',' || s.serial# sess_id, owner || '.' || object_name object, object_type, DECODE (l.block, 0, 'Not Blocking', 1, 'Blocking', 2, 'Global') STATUS, DECODE (v.locked_mode, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR (lmode)) mode_held FROM v$locked_object v, dba_objects d, v$lock l, v$session s WHERE v.object_id = d.object_id AND v.object_id = l.id1 AND v.session_id = s.sid ORDER BY oracle_username, session_id;
https://emarcel.com/identifyandkill/ -
Amélioration de la version Oracle 19c
-
Problème de compilation de trigger RMAN après montée de version en 12.2
alter trigger RMAN.VPC_CONTEXT_TRG disable;=> marche pas :(
lancer :
@?/rdbms/admin/dbmsrmanvpc.sql -vpd rman
puis UPGRADE CATALOG ;
-
Merci aux dev SQL
Merci aux dev sql qui m'ont bien aidé sur ce forum :
-
Gestion entreprise
avocat généraliste :
01 64 86 14 05Le lundi : de 09h00 à 12h00 et de 13h30 à 18h45
Le mardi : de 09h00 à 12h00 et de 13h30 à 17h30
Le mercredi : de 09h00 à 12h00 et de 13h30 à 17h30
Le jeudi : de 09h00 à 12h00 et de 13h30 à 17h30
Le vendredi : de 09h00 à 12h30 et de 13h30 à 16h15
Par correspondanceMaison de justice et du droit des Ulis
rue des Bergeres
91940 LES ULISMaison de l'avocat à Evry
01 60 77 00 28lundi au vendredi de 9h à 12h
mercredi 14h à 17h00 -
Lister les disques et type de disque
lsdev -Cc disk
exemple :
hdisk0 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk26 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk27 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk28 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk29 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk30 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk31 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk32 Available C6-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk33 Available C4-T1-01 Hitachi MPIO Disk VSP (Fibre)
hdisk34 Available C4-T1-01 Hitachi MPIO Disk VSP (Fibre) -
Show which hdisk(s) each of your filesystems reside on for AIX
Hyper utile :
#!/bin/ksh
for vg in `lsvg -o`; do
for fs in `lsvgfs $vg`; do
printf "%-22s" $fs;
for disk in `lsvg -p $vg | tail +3 | awk '{print $1}'`; do
lspv -l $disk | grep -q " ${fs}$" && printf "%-8s" $disk;
done;
echo
done;
done