Rechercher sur arkzoyd.com

30 décembre 2010

Programmer des opérations avec Java SE et Java EE

Que ce soit pour des opérations hebdomadaires ou pour des traitements qui s'exécutent toutes les 10 secondes, les plateformes Java SE et Java EE offrent des mécanismes de programmation qui permettent de planifier des opérations facilement et avec un effort réduit. Ces mécanismes s'appuyent sur les capacités de multi-threading des plateformes et sur les capacités de gestion concurrente. Dans cet article, vous trouverez 2 exemples simples mis en oeuvre avec les EJB Timer Services sur la plateforme Java EE (1.4+) et ScheduledThreadPoolExecutor de Java SE (1.5+).

26 décembre 2010

Tracer les ordres SQL dans vos serveurs MySQL

L'avantage des frameworks de mapping Objet/Relationnel comme Java Persistence API (JPA) est que, sauf pour de rares opérations, il n'est pas utile d'écrire du SQL. Si vous avez besoin de sélectionner certains entity beans qui correspondent à des critères pour vos opérations, vous pouvez utiliser JPQL. Très inspiré de SQL, le langage de requêtes de JPA s'applique aux instances de classes. Seulement voilà, quand on est de l'autre côté de la barrière, on aimerait bien savoir comment JPQL, les appels aux getter ou setter et le cycle de vie des objets dans le framework de persistence sont transformés en SQL... Il faut donc pour ça tracer/journaliser l'activité SQL sur vos bases de données.

24 décembre 2010

Cloner un logiciel de base de données 11g Release 2 en Cluster

Vous trouverez, parmi mes articles, des syntaxes de clone.pl pour des bases de données non-RAC en 10g et 11gR2 et la syntaxe pour une base de données 10g en RAC. La version 11g Release 2 offre de nouvelles options pour changer les groupes DBA, OPER et ASMDBA. Dans cet article, vous trouverez un exemple d'utilisation de cette nouvelle syntaxe.

Limiter les espaces par utilisateurs avec des QUOTAs

Dans notre quête à une meilleure utilisation des ressources dans l'entreprise, on en vient à partager des espaces de stockages sur des serveurs. Il faut pourtant éviter qu'un utilisateur vienne mettre en péril toute une équipe. Sous Linux ou Unix, mettre en oeuvre des quotas sur les systèmes de fichiers est une solution simple et gagnante pour maitriser ses espaces ; une sorte de thin-provisioning avant l'heure ;-). Dans cet article, vous trouverez les premières clés pour mettre en oeuvre cette solution en quelques minutes.

21 décembre 2010

SYS n'est pas inclus dans ANY

C'est une évidence, au moins lorsque O7_DICTIONARY_ACCESSIBILITY=false (valeur par défaut du paramètre), le fait d'hériter des privilèges ANY, comme create any table ne donne pas accès aux objets de l'utilisateur SYS. Vous me direz : "tant mieux !". Moralité, SYSTEM ne peut pas faire un AS OF SCN sur DUAL, alors qu'il peut le faire sur les objets des autres schémas :

18 décembre 2010

Basculer une "Managed Standby" : Switchover et Failover

Après avoir configuré votre managed standby et installé la supervision qui vous permet de vérifier que vos bases de données restent synchro, la question qui vient immediatement est "Comment Basculer vos standby en primaire ?". "Les discours les plus courts étant toujours les moins longs", vous trouverez ci-dessous 2 exemples de bascule qui utilisent la configuration décrite dans mon article précédent, Configurer une "Managed Standby" en 4 étapes.

17 décembre 2010

Prime à la casse avancée pour les processeurs Itanium et HP-UX

Il se pourrait bien que la prime à la casse vos serveurs HP-UX sous Itanium ait devancé d'1 mois celle de vos vieilles voitures... En effet, les licences Enterprise Edition de vos bases de données Oracle sur la série 93XX (aka Tukwila) seraient passées d'un core factor de 0.5 à 1.0 à la faveur du 1er décembre dernier. C'est du moins ce que laisse penser ce tableau Oracle Processor Core Factor Table, March 16, 2009.

Ce qui est assez ironique c'est que l'ancien tableau est, quant à lui, toujours sur le site ; avec la même date et le même nom Oracle Processor Core Factor Table, March 16, 2009 à l'heure où je vous parle 17/12/2010. L'année 2011 promet d'être riche en nouvelles histoires et coups bas... ça promet !

Reste qu'il va quand même falloir trouver une solution pour arrêter de payer trop cher des processeurs et un OS sans plus trop d'intérêt sinon d'avoir de moins en moins d'adeptes et de tout compliquer ! C'est un fan des processeurs Alpha et des premiers jours d'EPIC qui vous parle.

Configurer une "Managed Standby" en 4 étapes

A cause d'un misérable problème avec un broker Data Guard sur un de ces systèmes exotiques, je suis revenu à la bonne vieille "managed standby". J'avais le souvenir de quelque chose de beaucoup plus compliqué. J'en suis presque déçu ! Enfin toujours est-il que, comme je manque cruellement d'imagination en cette période hivernal, voici les éléments de configuration de ma plateforme. A ce propos, si vous avez des idées pour des articles à propos d'Oracle n'hésitez pas.

Mettons d'abord les choses au claire : Ce qui suit vient d'un esprit tordu; dans la vraie vie, vous préfèrerez faire un "duplicate for standby from active database" ou simplement "duplicate" et surtout vous configurerez le broker. A ce propos, je vous invite à lire cet excellent article intitulé "4 steps to create a Physical Standby Database".

Mais revenons à mon propos. Ma base de données d'origine est BLACK; dans ce qui suit, je vais créer une base WHITE avec une sauvegarde/restauration. Je configurerai ensuite une managed standby sans broker...

11 décembre 2010

Détecter les listeners Oracle avec NMAP

Vous n'êtes pas très sur qu'il y a un listener Oracle sur un serveur, ni sur quel port celui-ci est connecté ? Utilisez NMAP avec l'option -A comme ci-dessous ; J'ai "caché" le listener sur le port 1111 mais cela n'a pas fait long feu ; NMAP détecte les ports et les protocoles :

06 décembre 2010

Identification d'un client Java via un certificat SSL

Pour continuer l'article précédent intitulé "Identification Firefox via un certificat SSL", vous trouverez ci-dessous comment utiliser un certificat SSL avec un client Java. Pour ce faire, il faut que les mêmes conditions soient réunies que dans l'article précédent à savoir :
Une fois la configuration serveur réalisée, vous pouvez vous lancer dans la configuration et l'utilisation d'un client...

05 décembre 2010

Connecter Glassfish à la Liste de Révocation (CRL) de votre Autorité de Certification

Pour qu'une autorité de certification soit pleinement opérationnelle, il faut que vos clients et serveurs vérifient que les certificats sont valables dans la liste de révocation des certificats (CRL ou Certificate Revocation List). Les autorités de certification fournissent des mécanismes pour partager ces listes simplement depuis les navigateurs et serveurs. Pour ce qui d'une autorité de certification interne, il vous appartient de mettre en place ce mécanisme pour vous assurer que si vous invalidez un client, celui-ci n'accèdera plus à vos application. Glassfish offre plusieurs mécanisme pour cela. Cet article présente comment intégrer un fichier de révocation des certificats dans le mécanisme d'authentification SSL de Glassfish.

Identification Firefox via un certificat SSL

Dans l'article précédent consacré à l'installation d'un certificat SSL sur un serveur Glassfish, nous avons effectué une demande de certificat que nous avons installé avec le listener HTTP pour chiffrer les informations qui transitent et assurer l'identité du serveur.

Ce nouvel article présente comment créer et enregistrer un certificat sur Firefox. Nous développerons ensuite une page JSP que nous déploieront dans Glassfish et qui ne peut être vue que des utilisateurs avec un certificat signé.

Enregistrer un certificat SSL dans Glassfish

Comme pour la plupart des serveurs HTTP, Glassfish génère un certificat "Self-Signed" par défaut lors de son installation. Cela qui permet d'utiliser SSL pour chiffrer le protocole entre le client et le serveur. Toutefois cela ne garantit absolument pas la sécurité du client :
  • Que savez-vous du site ou de la société qui ont généré le certificat ?
  • Si le certificat est compromis et que quelqu'un peut déchiffrer vos données, comment pouvez-vous le savoir ?
Les différentes autorités de certification comme Verisign, Thawte, GoDaddy ou les autres offrent des services pour répondre à ces questions et protéger les utilisateurs ou les données grâce aux infrastructures à clés publiques et leur collaboration avec les fournisseurs d'outils web. Cet article présente comment remplacer le certificat "self-signed" par un certificat délivré par une authorité de certification dans Glassfish v3

03 décembre 2010

Changement dans le support et la certification d'Oracle sur VMWare

Si Oracle ne certifie toujours pas ses produits sur VMWare (i.e. ne teste pas et ni ne valide ses produits sur VMWare). En revanche, les conditions de support ont été récemment assouplies et réduisent donc le risque pour les clients qui veulent utiliser les 2 plateformes ensemble; en substance :
  • Oracle s'engage désormais à traiter les tickets ouverts sur les infrastructures VMWare. Si le problème est connu sur les OS natifs, Oracle y répondra. Si c'est un nouveau problème, le client doit toujours démontrer que le problème n'est pas en relation avec la couche de virtualisation ; en le reproduisant sur une configuration physique par exemple.
  • Ces conditions s'appliquent désormais également à RAC en version 11.2.0.2 et supérieure (fantastique nouvelle !).
Pour le wording exact, reportez-vous