Génrer un mot de passe automatiquement sous unix

Pour générer un mot de passe très complexe on peut utiliser la fonction suivante

tr -dc 'A-Za-z0-9!"#$%&'\''()*+,\-./:;<=>?@[\]^_`{|}~' </dev/urandom | head -c 30; echo

Pour quelque chose de plus adapter à un mot de passe de bases de données on ira vers moins de caractères spéciaux

tr -dc 'A-Za-z0-9!"#%&*+,\-^_' </dev/urandom | head -c 30; echo

On peut variabiliser

function genpass {
tr -dc 'A-Za-z0-9!"#%&*+,\-^_' </dev/urandom | head -c ${1:-30}; echo
}

La clause MODEL d’Oracle – Plus besoin de tableur

code SQL

CHAPITRE I: Les bases de la clause MODEL

La clause MODEL d’Oracle est utilisée pour générer des valeurs sous condition. Elle peut générer des valeur à partir de rien ou à partir de cellules existantes dans la table ou déjà calculées avec cette même clause. Cela en fait un outil de calcul puissant qui bien utilisé rend obsolète votre tableur préféré.

Premier exemple de génération.

Je veux générer de toutes pièces un tableau (une table) qui va me servir à calculer phi (ou nombre d’or).

  • Je sais que la valeur théorique de phi est de (1+√5)/2.
  • Je sais aussi que la suite de Fibonacci permet d’approcher ce nombre en divisant un de ses termes par le précédent (phi ≅ fibo(n)/fibo(n-1))
  • Je suis curieux, je veux aussi calculer l’écart entre le rapport fibo(n)/fibo(n-1) et la valeur théorique

(suite…)

Installer Oracle XE 18c sur Centos 8

travail sur ordinateur

Cette procédure d’installation se déroule avec l’utilisateur root. Elle a été déroulée sur une VM centos 8 minimaliste telle que distribuée par linuxvimages.com.

Elle permet d’installer Oracle XE sur une VM Centos 8, l’intérêt est essentiellement pédagogique. En effet Oracle XE est très limitée (12 Go de données utilisateur au maximum, 2Gb de mémoire, 2 Threads … et 3 PDB, mais on s’en cogne ça ne sert à rien sur des volumétries si faibles).

Malgré ces limitations les interpréteurs SQL et PL/SQL sont complets ce qui en fait un excellent outil de formation.
(suite…)

Lister les paramètres cachés et ce qu’ils font

cachée

Les paramètres cachés sont ceux qu’on n’est pas censé toucher. Ceux qui sont là en cas d’extrème urgence pour contourner un bug le temps qu’Oracle ponde un “patch”. Ils sont là pour contourner les bugs, c’est du moins le message du support Oracle.

Ils servent aussi d’interrrupteur et de paramétrage des fonctionalités ( le nombre de secondes entre deux snapshots d’ASH, c’est un paramètre caché, l’utilisation de certaines fonctions de l’optimiseur ce sont aussi des paramètres cachés.) Afin de les trouver et de déterminer leur fonction, il est possible d’interroger la base de dpnnées ou plus exctement ses structures mémoire qui ont ces informations en stock.
(suite…)

Version du Cluster Ready Service

Support

Demandé par le support Oracle pour connaitre la version du Cluster Ready Service noeud par noeud, le passage des instructions crsctl query crs en masse peut être fastidieux. Voici donc une petite fonction bash pour obtenir les informations sous linux. Il faut bien sûr qu’elle soit lancée par l’utilisateur propriétaire de la grid-infrastructure et que la variable GI_HOME corresponde à son répertoire d’installation
(suite…)

AWR en 11gR2, bogue lié au changement de valeur de control_management_pack_access

Dans le post précédent je me suis trouvé confronté au souci suivant: le passage du paramètre control_management_pack_access de NONE à DIAGNOSTIC+TUNING sur Linux ne déclenchait pas toutes les collectes de statistiques nécessaires au bon établissement d’un rapport AWR et ce malgré le caractère dynamique dudit paramètre.

Deux contournements m’ont été proposés par le support :

  1. Redémarrer la base (SIC!)
  2. Ou manuellement Alimenter les tables dont les données ne sont pas collectées à l’aide des scripts suivants :

(suite…)

AWR en 11gR2 me dit “No data exists for this section of the report”

Franchement quel vilain cet AWR… Non ? Me faire ça à moi, No data exists for this section of the report, n’ai je donc tant administré de bases que pour cette infamie ? Un peu de respect que diable !!!

Pourtant j’ai vérifié statistics_level est bien positionné à ‘TYPICAL’ et il y a des clichés dans dba_hist_snapshot

SQL&gt; select snap_id
  2       , to_char(end_interval_time,'YY/MM/DD HH24:MI:SS') EIT
  3  from dba_hist_snapshot
  4   where end_interval_time &gt; trunc(sysdate)
  5  order by 1
  6  /

(suite…)

Sauvegarder la config de putty

Putty

Putty est un client multiprotocole pour windows diponible sur le site putty.org. La sauvegarde de sa configuration n’est plus très facile depuis qu’il ne s’appuie plus sur un fichier de configuration mais sur la base de registre de Windows. Le script suivant permet la sauvegarde des la configuration putty dans un fichier reg

Le script

@ECHO OFF
regedit /s putty.reg
regedit /s puttyrnd.reg
start /w putty.exe
regedit /ea new.reg HKEY_CURRENT_USERSoftwareSimonTathamPuTTY
copy new.reg putty.reg
del new.reg
regedit /s puttydel.reg

Le script a été trouvé dans la doc PuTTY et utilise deux fichiers de paramètre puttyrnd.reg et puttydel.reg. leur utilisation est expliquée sur le site de la doc