jeudi 17 octobre 2013

APACHE TOMCAT - Comment changer l'application ROOT (ou comment changer de Homepage)

Sous apache TOMCAT, nous nous trouvons avec une page par défaut liée à l'application ROOT, lorsque vous tapez l'adresse de votre serveur (http://localhost)
Il convient souvent de changer cela par votre application, MAIS en gardant quand même la possibilité d'avoir la console de gestion de TOMCAT.

Voici comment procéder.

Dans le répertoire de votre serveur, éditez le fichier server.xml qui se trouve dans le répertoire /conf

recherchez dans le fichier la balise <Host .... </Host>

à l'intérieur de cette balise, insérez ou modifiez comme suit :

<Context path="" docBase="nom_de_mon_appli">
       <!-- Application lancé à la 'racine du site' (http://localhost) -->
       <WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>

<Context path="/ROOT" docBase="ROOT">
       <!-- ROOT redirigé sur http://localhost/ROOT -->
       <WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>


Lorsque vous irez sur http://localhost vous vous trouverez désormais avec l'affichage de la page d'accueil de votre application.

Lorsque vous irez sur http://localhost/ROOT vous retrouverez la jolie page par défaut d'APACHE TOMCAT.

mardi 15 octobre 2013

ORACLE - ORA-00020 maximum number of processes exceeded

ORA-00020 maximum number of processes exceeded 
ORA-00020 Nombre de processus maximum dépassé

Le nombre de processus simultanés pour la base oracle est dépassé. correspond à un paramètre se trouvant dans le spfile.


Il convient donc de modifier se paramètre afin d'augmenter le nombre de processus simultanés, enfin du moins si le nombre de processus simultanés est justifié...

Voici la procédure à appliquer :

$ORACLE_HOME/bin/sqlplus /nolog

SQL> Connect SYS/<Password> AS SYSDBA
SQL> create pfile from spfile;
SQL> Shutdown immediate;

Editer le pfile (ini.ora se trouvant dans le répertoire $ORALE_HOME/dbs sous linux)

Modifier cette ligne pour augmenter le nombre de process simultanés :

processes=<Nombre de process maximum>

$ORACLE_HOME/bin/sqlplus /nolog
SQL> Connect SYS/<Password> AS SYSDBA
Connected to an idle instance
SQL> startup pfile='<Chemin et nom du fichier ini.ora>'

Pour vérifier que les paramètres ont étés bien pris en compte :
SQL> show parameter processes;

vous pouvez aussi vérifier que les paramètres suivants sont bien supérieurs aux process (1,2 fois minimum);
SQL> show parameter transactions;
SQL> show parameter sessions;

Une fois que tout est bon et vérifié :
SQL> create spfile from pfile;
File created

SQL> shutdown immediate
SQL> startup open

Ces deux dernières commandes permettent de bien s'assurer que la base a été démarée en fonction du spfile et non du pfile.




lundi 14 octobre 2013

ORA-3113 (end-of-file on communication channel) lors d'une tentative de Startup Open sur une base


ORA-3113 (end-of-file on communication channel) est une erreur plutôt générique qui indique que le process client a perdu le contact avec le process serveur.

Il se peut que le problème vienne des logs du serveur, dans ce cas :





 Vérifier dans le ini.ora de la base (se trouvant dans $ORACLE_HOME/dbs sous linux) contienne :nls_nchar_conv_excp=FALSE, si ce n'est pas le cas il est très probable que vous devriez modifier votre spfile


1) Executer :

$ORACLE_HOME/bin/sqlplus /nolog


SQL> connect SYS/<password> AS SYSDBASQL> startup mount

SQL> show parameter db_recovery_file_dest_size;


Augmenter la taille des archivelogs, par exemple :SQL> ALTER system SET DB_RECOVERY_FILE_DEST_SIZE = 6355M;


SQL> exit


rman target sys/<Password>


RMAN> backup archivelog all not backed up 1 times format '<chemin et nom de fichier de sauvegarde>' delete input;RMAN> exit


$ORACLE_HOME/bin/sqlplus /nologSQL> connect SYS/<password> AS SYSDBASQL> alter database open;

2) Modifier si besoin le chemin des archivelogs dans le fichier ini.oradb_recovery_file_dest= "<Chemin des archivelogs>"

3) pour rappel concernant le spfile
(
> create pfile from spfile
> shutdown

Effectuez les modifications dans le Pfile

> startup pfile=/path/to/pfile...

Vérifez que les changements sont bien effectués
> create spfile from pfile
> shutdown ....
> startup

)

Si vous voulez désactiver les archivelogs oracle :

SQL> shutdown immediate;

SQL> startup mount;
SQL> alter database flashback off;
SQL> alter database noarchivelog;
SQL> archive log stop;
SQL> alter system set LOG_ARCHIVE_START=false scope=spfile;
SQL> alter database open;





jeudi 3 octobre 2013

OPTIMISER SON SSD POUR WINDOWS 7 Version 2

Les opérations de paramétrage sont assez longues à réaliser, j'ai essayé de réduire les manipulations au maximum:

Les fichiers à télécharger ICI:
https://copy.com/gT9YynXSu946


lundi 23 septembre 2013

Hyper-V: Comment étendre le volume C d’une machine virtuelle?



Un de nos serveurs Windows 2008R2 virtuels c’est retrouvé plein au niveau de son volume C.

Dans ce cas de figure, pas d’autres choix que de l’éteindre, d’étendre le fichier VHD/VHDX et ensuite de repartitionner le volume en lui ajoutant le nouvel espace libre.
Pour réaliser cette opération, j’ai utilisé l’outil GPARTED.
Cet utilitaire open source permet de travailler au niveau des partitions comme par exemple les opérations de redimensionnement.
Cerise sur le gâteau, il est également proposé en version Live CD/USB.

A. Etendre le fichier VHD/VHDX

Au niveau de la console Hyper-V Manager, afficher les paramètres de votre machine virtuelle et sélectionner le node ID Controller 0
HV1
Cliquer sur le bouton Edit

HV2
Choisisser l’option Expand

HV3
Introduiser la nouvelle taille de votre fichier VHD/VHDX et cliquer sur Next

HV4
Cliquer sur Finish.


Votre fichier VHD/VHDX a été étendu avec sa nouvelle taille. Nous allons maintenant pouvoir configurer le serveur virtuel pour qu’il puisse en bénéficier.

B. Repartitionnement du volume C

Passons maintenant dans la configuration de notre système.

Pour ce faire, nous allons booter sur l’ISO de Gparted et l’utiliser pour étendre le volume.
GP1
Editer votre machine virtuelle pour insérer le fichier ISO de Gparted et démarrer là.

GP2
Sélectionnez GParted Live

GP3
Sélectionnez Don’t Touch Keymap

GP4
Presser Enter

GP5
Presser Enter

GP99
Dès que l’interface de GParted sera chargée, vous obtiendrez un écran vous affichant le statut de votre partition:
  • Espace alloué
  • Espace allouable

GP7
Sélectionner la partition à étendre en faisant un clique droit dessus et sélectionner Redimensionner/Déplacer

GP8
Étendre l’espace au travers de la partie graphique (les textboxes s’adaptent en conséquence)

GP9
Dès que la taille désirée est sélectionnée, cliquer sur Redimensionner/Déplacer
Fermer ensuite la fenêtre.

GP10
Pour redémarrer la machine virtuelle, cliquer sur le Exit du bureau

GP11
Sélectionner l’option Reboot et cliquer sur OK

La taille du volume C de la machine virtuelle possède maintenant une nouvelle taille.
Au redémarrage du système, un Check Disque sera automatiquement lancé par Windows, laisser la procédure ce dérouler normalement. C'est fini.



mercredi 18 septembre 2013

SYNCHRONISER L'HEURE SUR LE RESEAU sur un serveur AD WINDOWS (2008 - 2012) -Serveurs NTP


La synchronisation des horloges de tous les postes et serveurs d'une infrastructure est très importante pour la fiabilité du réseau.
Les postes clients récupèrent les informations horaires à partir des contrôleurs de domaine qui eux même le récupèrent à partir du PDC maître.
Pour s'assurer que le PDC maître n'ait pas de décalage important avec "l'heure universelle du Pays" il faut que lui même se synchronise à partir de serveurs de temps externes (les fameux serveurs NTP), souvent reliés avec une horloge atomique, assurant la fiabilité de l'heure donnée.

Il faut bien penser tout d'abord à ouvrir en entrée comme en sortie le port udp 123 dans les paramètres du firewall

1. repérer le serveur maître en tapant la commande : netdom /query fsmo
2. connectez vous au serveur maître et tapez les commandes suivantes :
 net stop w32time (va vous permettre d’arrêter sur votre serveur maître le service de temps)


w32tm /config manualpeerlist:"ntp.univ-lyon1.fr ntp.cemef.m
ines-paristech.fr ntp.polytechnique.fr ntp.relier.fr" /syncfromflags:manual /reliable:yes
(inscrit sur le serveur maitre les serveurs NTP auxquels il doit se référer pour la synchronisation)

(autant se synchroniser avec des serveurs Français, et en premier chez les petits lyonnais :-) )


net start w32time
(redémarre le service de temps sur le serveur)

w32tm /query /configuration
(vous permet d'afficher et vérifier la configuration)

3. n'oubliez pas de vérifier le trop oublié journal d’événements : il vous dira si la synchronisation avec les serveurs NTP se passe bien.
Si ce n'est pas le cas c'est fréquemment un problème DNS qui bloque, vérifiez alors que vos serveurs DNS internes peuvent se référer à des serveurs DNS externes (généralement les serveurs DNS de votre fournisseur internet).

ceci a été testé sur des serveurs Windows 2008 et 2012 au titre de la synchronisation NTP

lundi 12 août 2013

ORACLE - ERREUR LORS D'UN EXPDP ou IMPDP (ORA-22303 + ORA-00600 + ORA-06508 + ORA-06512)

Voici un exemple de l'erreur rencontrée :

UDE-00008: l'opération a généré l'erreur ORACLE 22303
ORA-22303: type "SYS"."DBMSOUTPUT_LINESARRAY" non trouvé
ORA-00600: code d'erreur interne, arguments : [kokaocr], [], [], [], [], [], [],
 [], [], [], [], []
ORA-06508: PL/SQL : unité de programme nommée : "SYS.DBMS_OUTPUT" introuvable
ORA-06512: Ó ligne 1

Cause : Cette erreur survient lors d'une tentative de mise à jour incomplète (Lancement d'un patch correctif)

1) Vérifier la source de l'erreur

SQL> desc KOTTD$
ERROR:
ORA-00600: internal error code, arguments: [kokaocr] , [], [], []



2) Appliquer les modifications suivantes :

SQL> alter table KOTTD$  add unique (SYS_NC_OID$);
SQL> alter table KOTTB$  add unique (SYS_NC_OID$);
SQL> alter table KOTAD$  add unique (SYS_NC_OID$);
SQL> alter table KOTMD$  add unique (SYS_NC_OID$);
SQL> alter table KOTTBX$ add unique (SYS_NC_OID$);
SQL> alter table KOTADX$ add unique (SYS_NC_OID$);


3) Vérifier à nouveau que tout est OK

SQL> desc KOTTD$

cette commande doit ne rien retourner


SQL> select index_name, column_name
from dba_ind_columns
where table_owner = 'SYS'
  and table_name in ('KOTTD$','KOTTB$','KOTAD$','KOTMD$','KOTTBX$','KOTADX$')
  and column_name = 'SYS_NC_OID$';


Cette commande doit retourner en tout et pour tout 6 Lignes