Configuration SQLdeveloper , instant client Oracle, OID LDAP

Musée des erreurs, Oracle Net, scripts et trucs pas de Commentaire »

Par défaut SQL Developer ne reconnait pas la configuration standard Oracle Net et notamment la résolution de nom via OID, même  si le client est correctement configuré par ailleurs.

ie : une connexion sqlplus fonctionne avec la résolution via OID mais pas sqldeveloper.

Si vous tentez une connexion LDAP vous risquez une erreur du genre : ‘ property ‘hostname’ not set on the database provider ‘ …

Les hypotheses ici :

ORACLE_HOME c:\oracle\instant_client

et dans le sous répertoire standard \network\admin les fichiers de configuration pour la résolution de nom via OID / LDAP :

sqlnet.ora
NAMES.DIRECTORY_PATH= (LDAP, EZCONNECT)
TNSPING.TRACE_DIRECTORY = c:\oracle\instant_client_10g
TNSPING.TRACE_LEVEL = c:\oracle\instant_client_10g

ldap.ora
DEFAULT_ADMIN_CONTEXT = « dc=mondomaine,dc=fr »
DIRECTORY_SERVERS = (sr-oid.mondomaine.fr:389)
DIRECTORY_SERVER_TYPE = OID

Pour que SQLdevelopper fonctionne il faut rajouter la variable TNS_ADMIN dans l’environnement WINDOWS qui pointe sur votre rep NETWORK\ADMIN

C:\>set tns_admin=C:\oracle\instant_client_10g\Network \Admin

ou utiliser la fenetre ‘propriétés’ de vopre poste de travail et le bouton ‘variables d’environnement’ pour ajouter TNS_ADMIN

Dès lors SQLdevelopper reconnait votre serveur LDAP qui apparait dans la liste déroulante (si vous avez choisit ‘type de connexion’ LDAP)

sqld_ldap

Ensuite il ne vous reste plus qu’a choisir le contexte racine dans la liste et cliquer sur le bouton ‘charger’ pour avoir la liste de vos alias définis dans OID…

ORA-03001: unimplemented feature sur un RENAME – solution

Musée des erreurs pas de Commentaire »

On peut pârfois obtenir une erreur ORA-3001 sur un RENAME TABLE.
Après avoir vérifié que ce n’est pas un pb de version (RENAME a du arriver en V 10 je crois) :
VErifier par exemple qu’on est bien en V10 ou 11, et pas en mode dégradé : Voir le parametre ‘COMPATIBLE’.
En fait il s’avere qu’il faut être connecté en tant qu’utilisateur propriétaire.
C’est le ALTER SESSION SET CURRENT_SCHEMA=proprietaire qui pose probleme.

SQL>
SQL> rename code_postaux to codes_postaux;
rename code_postaux to codes_postaux
*
ERROR at line 1:
ORA-03001: unimplemented feature

3 solutions :
- se connecter dans le compte si on a le mot de passe
- utiliser un su, pour substituer réellement l’utilisateur voir l’article sur le su
- faire un execute immediate du RENAME via pl/sql comme suggéré ici

ORA-27102 no space left on device (Linux)

Musée des erreurs pas de Commentaire »

Que faire quand on a cette erreur?

Elle se produit souvent quand on vient d’augmenter la sga_max_size au redémarrage de la base.

A l’installation d’oracle sous linux, il faut positionner certains paramètres noyau pour la gestion de la mémoire (metalink 301830.1).

le shmmall qui correspond à la valeur total de la ram en bytes divisé par la taille de la page mémoire et le shmmax qui correspond à la moitié de la valeur de la Ram totale mais maximum 4Go.

Vérifier que la valeur du shmmall soit la bonne.

Par défaut on met souvent 4Go et pour les gros serveurs de 32Go de ram la valeur est de 8Go (avec une page size à 4096).  Si l’on veut dépasser 4Go de SGA, il faut donc positionner correctement ce paramètre.

$ getconf PAGE_SIZE pour avoir la taille de la page mémoire
4096
# sysctl -p pour voir tous les paramètres kernel
vi /etc/sysctl.conf pour modifier les paramètres
albanlepunk