FAQ

EMS SQL Manager for PostgreSQL est un outil puissant d’administration et de développement de serveur de bases de données de serveur PostgreSQL. Le programme fonctionne avec toutes les versions de PostgreSQL jusqu’aux dernières versions et supporte toutes les dernières fonctionnalités de PostgreSQL y compris les types énumérés, les types de recherche texte, les données de type XML et UUID, l’ordre de tri des clés index, les tableaux des types composés et d’autre. SQL Manager for PostgreSQL offre les outils puissants tels que le concepteur visuel de bases de données pour créer les bases de données PostgreSQL en quelques clics, le constructeur visuel de requêtes et l’éditeur SQL avancé pour construire les requêtes compliqués au PostgreSQL, l’éditeur BLOB puissant et beaucoup d’autres fonctionnalités utiles pour l’administration efficace de PostgreSQL. SQL Manager for PostgreSQL dispose d’une interface utilisateur graphique et d'un système des assistants avec la description détaillée dont l’usage est simple même pour les novices.

Pour commencer à travailler vous devez avoir la possibilité de vous connecter au serveur PostgreSQL local ou distant. Votre ordinateur doit satisfaire aux pré-requis de EMS SQL Manager for PostgreSQL.

Ces versions de SQL Manager for PostgreSQL se diffèrent par leurs fonctionnalités. En tant qu’application gratuite SQL Manager Freeware dispose de certaines restrictions : le nombre de bases de données enregistrées ne doit pas dépasser cinq, ainsi que beaucoup d’autres restrictions. Vous pouvez voir la liste des différences fonctionnelles entre les versions sur notre site sur la page Tables des fonctions.

Les utilitaires Data Export/Import for PostgreSQL disposent de fonctionnalités supplémentaires, qui ne sont pas disponibles dans SQL Manager for PostgreSQL, par exemple:
  • Export/import simultanés de données depuis/vers plusieurs tables;
  • Export/import simultanés de données depuis/vers plusieurs tables sélectionnées des différentes bases de données d’un seul hôte;
  • Utilitaire de ligne de commande qui permet d’exporter/d’importer des données en utilisant un fichier de configuration avec toutes les options.

 

Premièrement, EMS SQL Query for PostgreSQL fonctionne beaucoup plus vite parce que c’est une application légère. De plus, EMS SQL Query for PostgreSQL fournit les fonctionnalités supplémentaires pour construire des requêtes, par exemple:
  • requêtes « favories » pour rechercher et exécuter rapidement les requêtes fréquemment utilisées;
  • stockage de l’historique des requêtes permettant de revoir n’importe quelle requête modifiée;
  • améliorations de l’interface qui facilitent votre travail.
EMS DB Extract for PostgreSQL dispose de fonctionnalités supplémentaires, qui ne sont pas disponibles dans EMS SQL Manager for PostgreSQL, par exemple :
  • extraction des méta-données depuis plusieurs bases de données d’un seul hôte;
  • application console pour exécuter l’extraction d’un simple clic;
  • vitesse d’exécution rapide.

Les onglets ‘DDL’ dans l'éditeur d’objets est en lecture seule. Il affiche le texte des opérations SQL que vous effectuez sur les tables dans les onglets ‘Champs’. Pour modifier ce texte, vous pouvez le copier dans le presse-papiers et le modifier en utilisant l'éditeur de scripts SQL.

SSH (Secure Shell Host) est un protocole utilisé pour augmenter la sécurité de l’ordinateur lors de travaux avec des systèmes Unix sur l’Internet. SSH utilise plusieurs algorithmes de cryptage avec une fiabilité différente. SSH est très répandu parce que plusieurs systèmes d’exploitation de type Linux (par exemple FreeBSD) incluent le serveur SSH dans la distribution standard. Pour plus d’information, visitez http://openssh.org. Le tunneling SSH est une fonctionnalité de SQL Manager qui permet de sécuriser la connexion aux serveurs PostgreSQL lors du travail via les chaînes de connexion qui ne sont pas sécurisées. Vous pouvez aussi utiliser le tunnel SSH pour accéder aux serveurs PostgreSQL distants, si pour quelques raisons le port 5432 est bloqué pour des connexions externes. La connexion via le tunnel SSH fonctionne de la façon suivante. Tout d’abord, on établit la connexion et l’authentification entre un client SSH incorporé dans PostgreSQL et un serveur SSH distant. Puis toute l’information sortante et entrante entre le programme et le serveur PostgreSQL doit être transmise via le serveur SSH à l’aide du port de communication (d’habitude c’est 22). Puis le serveur SSH transfère directement cette information vers le serveur PostgreSQL. Pour enregistrer une base de données avec une connexion via le tunnel SSH, veuillez initialiser les paramètres suivants dans l'assistant d'enregistrement des base de données de SQL Manager for PostgreSQL : Première étape de l'assistant:
- Hôte est un hôte sur lequel le serveur PostgreSQL est situé du point de vue du serveur SSH. Si le serveur SSH et le serveur PostgreSQL sont installés sur une même machine, il est égal à l’hôte SSH et vaut probablement 'localhost'.
- Port est un port du serveur PostgreSQL. PostgreSQL utilise le port 5432 par défaut.
- Nom d’utilisateur est le nom de l’utilisateur du serveur PostgreSQL.
- Mot de passe est le mot de passe de l’utilisateur du serveur PostgreSQL.
Notez que le nom de l'hôte PostgreSQL doit être configuré par rapport au serveur SSH. Par exemple, si les serveurs PostgreSQL et SSH sont installés sur le même ordinateur, vous devez spécifier localhost en tant que nom de l'hôte au lieu du nom de l'hôte externe ou de l’adresse IP. Puis sélectionnez l’option 'Utiliser tunneling' et 'tunneling SSH'.
Deuxième étape de assistant:
- Nom du hôte SSH est un hôte sur lequel le serveur SSH est activé.
- Port SSH est le port sur lequel le serveur SSH est activé.
- Utilisateur SSH est un utilisateur de l’ordinateur Linux (c’est un utilisateur Linux, et non pas un utilisateur du serveur PostgreSQL)
- Mot de passe SSH est le mot de passe de l’utilisateur Linux.

Entrez s’il-vous-plaît les valeurs suivantes dans les champs correspondants :
Sur l’onglet SSH:
- Nom de l'hôte SSH - est un hôte sur lequel le serveur SSH est activé.
- Port SSH - est un port via lequel le serveur SSH est activé.
- Nom de l’utilisateur SSH - est un utilisateur d’un ordinateur avec le système d’exploitation Linux (c’est un utilisateur Linux, et non pas un utilisateur du serveur PostgreSQL.)
- Mot de passe SSH - est un mot de passe de l’utilisateur de Linux.
Sur l’onglet Général:
- Hôte est un hôte sur lequel un serveur PostgreSQL est situé du point de vue du serveur SSH. Si le serveur SSH et le serveur PostgreSQL sont installés sur une même machine, l’hôte est identique à l’hôte SSH et vaut généralement 'localhost'.
- Port est le port du serveur PostgreSQL sur l'hôte distant. PostgreSQL utilise le port 5432 par défaut
- Nom d’utilisateur est un nom d’utilisateur du serveur PostgreSQL.
- Mot de passe est le mot de passe de l’utilisateur du serveur PostgreSQL.

Le tunneling HTTP est une méthode qui permet de se connecter et de transmettre des données entre un programme et un serveur PostgreSQL via les protocoles HTTP/HTTPS en utilisant le port 80, qui est utilisée par un navigateur Internet habituel. On utilise cette méthode pour se connecter au serveur PostgreSQL distant d’une compagnie d’hébergement quand la connexion directe est impossible pour des raisons de sécurité. Le tunnel HTTP fonctionne de la façon suivante : toutes les requêtes sortantes et les commandes envoyées du logiciel client sont cryptées et transmises via le protocole HTTP/HTTPS en utilisant le port 80, vers un script spécial. Ce script décode des données reçues et les transmet vers un serveur PostgreSQL pour le traitement, et enfin renvoie le résultat. Cette méthode exige qu’un serveur HTTP (Apache) et PHP avec PostgreSQL soient installés sur un serveur distant. En règle générale, ce logiciel est fourni par tous les services d’hébergement qui offrent les solutions d’hébergement Linux. Vous devez aussi télécharger un script spécial emsproxy.php sur votre serveur web avec l’accès à distance (vous pouvez le placer dans un dossier dans lequel se trouvent tous vos scripts PHP). Après avoir ouvert la page http:// /emsproxy.php dans votre navigateur, vous verrez un message "EmsProxy v 1.31" (le numéro de version peut être différent) si votre serveur web répond à ces exigences et si le script est installé correctement. Pour enregistrer une base de données distante avec l’accès via le tunnel HTTP, vous devez saisir les paramètres suivants dans l’assistant d’enregistrement des bases de données de SQL Manager for PostgreSQL .
Lors de la première étape de l'assistant:
- Hôte est un hôte sur lequel se trouve le serveur PostgreSQL du point de vue du serveur HTTP. En règle générale, le serveur HTTP et le serveur PostgreSQL se trouvent sur la même machine et représentent 'localhost'.
- Port est un port du serveur PostgreSQL sur un hôte distant. PostgreSQL utilise le port 5432 par défaut.
- Nom d’utilisateur est le nom de l’utilisateur du serveur PostgreSQL.
- Mot de passe est le mot de passe de l'utilisateur du serveur PostgreSQL.
- Sélectionnez ‘Utiliser tunneling' et 'tunneling SSH’.
Deuxième étape de l’assistant:
- URL est une adresse où se trouve le script de emsproxy.php (par exemple, http://mywebserver /emsproxy.php).

Vous devez désactiver l’option ‘Convertir le nom des objets créés en minuscule' dans le dialogue ‘Options de l'environnement’ sur l’onglet Outils| Éditeurs d'objet.
Afin d’indiquer une source de données dans votre rapport vous devez ajouter la forme du dialogue dans votre rapport (le menu ‘Éditer’->’Ajouter la forme’ / 'Edit'->'Add dialog form' du constructeur de rapport), puis déplacez les composants de la base de données et de la requête depuis le panneau gauche du constructeur vers la forme et enfin configurez les propriétés de la requête et les propriétés de la connexion. La requête apparaîtra dans la liste des sources de données.
Pour votre commodité et pour augmenter la vitesse de votre travail, la grille de données permet d’ajuster plusieurs paramètres d’affichage des données. Voici les plus importants d’entre eux (accessibles sur l’onglet ‘Grille| Options des données’ de la fenêtre ‘Options d’environnement’):
- Limites dans l'éditeur de table et de vue. Avec l’option activée ‘de tous les enregistrements d'une table’, vous pouvez visualiser tous les enregistrements d’une table sans accéder au serveur. Si les tables sont très grandes ou si la vitesse de connexion est lente, la recherche de données s’effectue avec retard et le trafic entrant peut augmenter considérablement. Il est recommandé d’utiliser ce mode lors du travail avec les bases de données locales dans le réseau privé. Le mode ‘de seulement’ limite le nombre maximum d’enregistrements retournés par la requête. Nous avons mis en service ce mode parce que l’homme n’est pas capable de traiter une si grande quantité d’informations en une fois. Pour exécuter une requête et afficher la portion suivante de données, utilisez le bouton ‘Suivant’ sur la barre d’outils de la grille de données. Ce mode permet d'accélérer considérablement la visualisation des données de la table, de prévenir le blocage et le délai d’attente. Il est recommandé d’utiliser ce mode lors du travail avec de grandes tables, quand la vitesse de connexion est lente ou quand le volume du trafic a de l’importance. Ce mode est activé par défaut. Avec ce mode vous pouvez utiliser les options ‘Utiliser SQL pour trier les données’ et ‘Utiliser SQL pour filtrer les données’ qui sont très utiles.
- Mode grille par défaut. Cette option peut être utilisée pour définir si les lignes sélectionnées seront chargées en une fois dans la grille (Charger toutes les lignes) ou par parties (Charger les lignes visibles) quand l’utilisateur scrolle les données de table. Le premier mode augmente le temps d’ouverture de la requête mais accélere le défilement. L’ouverture de la requête est très rapide en mode ‘Charger les lignes visibles’ mais les retards ont lieu lors de la navigation sur la grille.
- Utiliser le tri SQL lors de la visualisation des données. Si cette option est activée quand l’utilisateur règle le tri des données, le résultat de la requête envoyée au serveur s’affiche de nouveau dans la grille. Cette option est très utile avec le mode ‘de seulement’ mais elle peut augmenter le trafic. Quand cette option est désactivée, le tri s’effectue sur l’ordinateur client sans connexion au serveur, mais ce sont les données chargées qui sont triées. C’est-à-dire que si vous avez sélectionné 1000 enregistrements à trier en utilisant l’option ‘de seulement’, ces enregistrements seulement seront triés.
- ‘Utiliser SQL pour filtrer les données’. Si cette option est activée, les données sont triées sur le serveur, le résultat de la requête envoyée au serveur s’affiche de nouveau dans la grille. Cette option est très utile avec le mode ‘de seulement’ mais elle peut augmenter le trafic. Quand cette option est désactivée, le filtrage s’effectue sur l’ordinateur client sans connexion au serveur, mais ce sont les données chargées qui sont triées. C’est-à-dire que si vous avez sélectionné 1000 enregistrements à trier en utilisant l’option ‘de seulement’, ces enregistrements seulement seront filtrés.
Il est recommandé de régler les options suivantes afin d’augmenter au maximum l’efficacité de travail avec des grandes tables:
- ‘de seulement’ - activé
- ‘Charger les lignes visibles’ – activé
- ‘Utiliser SQL pour trier les données’ – activé
- ‘Utiliser SQL pour filtrer les données’ - activé
Il vous faut activer l’option ‘Charger les lignes visibles’. Cliquez avec le bouton droit de la souris sur sur la table et sélectionnez ‘Mode grille’\‘Charger les lignes visibles’.

Le dialogue ‘Informations d'enregistrement de la base’ (Database Registration Info) contient l’onglet ‘Journal’ (Log) qui vous permet d’activer les traces sur les modifications des méta-données exécutées dans une base de données, et des instructions SQL exécutées dans l’ Éditeur SQL.

Champs de type TEXT, BYTEA, OID et VARCHAR ne sont pas exportés par défaut. Vous devez sélectionnez manuellement ces champs sur l’onglet ‘Champs’.
La fonction“Exporter en tant que script SQL” est prévue pour exporter les données des tables vers les bases de données des autres serveurs. La fonction “Extraire les méta-données” est prévue pour copier les données vers les tables de serveur PostgreSQL.

Afin de modifier un répertoire, suivez les étapes suivantes:
- Cliquez avec le bouton droit de la souris sur une base de données nécessaire dans l’arbre de l’explorateur de bases, puis cliquez sur l’élément ‘Informations sur la base de données enregistrée’ dans le menu contextuel qui apparaît (vous pouvez aussi rechercher cet élément dans le menu principal ‘Base de données’). La fenêtre des propriétés de la base de données va s’ouvrir.
- Cliquez sur l’onglet "Répertoires".
- Dans la section ‘Répertoire par défaut pour l'export de données’ vous pouvez sélectionner un répertoire par défaut pour un fichier à exporter.

Il vous faut augmenter les valeurs pour le délai d’attente dans l’onglet ‘Outils | Délais d'attente’ de dialogue ‘Options de l’envoronnement’, ou initialiser celles-ci à zéro, c’est-à-dire initialiser les valeurs illimitées.

Veuillez vérifier que le fichier 'libpq.dll file' est indiqué dans le répertoire de SQL Manager for PostgreSQL. Pour résoudre ce problème, réinstallez l’application.

Vous pouvez personnaliser tous les formats d’affichage: integer, float, date, time et date/time dans la fenêtre ‘Options de l'environnement, sur l’onglet Grille/Couleur & Formats.

Oui, c’est possible! Le système d’exploitation du serveur n’a aucune importance. SQL Manager fonctionne seulement dans un environnement Windows.

Si à cause de la politique de sécurité de votre réseau corporatif ou de votre fournisseur d’hébergement, vous n’avez pas la possibilité de vous connecter directement à votre serveur PostgreSQL via TCP/IP (par exemple c’est bloqué par un coupe-feu), vous pouvez utiliser les tunnels SSH ou HTTP, fonctionnalité de SQL Manager.

1. Veuillez vérifier qu’une enregistrement de votre ordinateur client est indiqué dans le fichier pg_hba.conf sur le serveur PostgreSQL (ce fichier se trouve dans un répertoire de données du cluster de la base de données).
2. Si vous essayez de vous connecter à un serveur distant, les connexions TCP/IP doivent être autorisés sur le serveur distant. Pour cela il faut modifier le fichier postgresql.conf sur le serveur : il vous faut ajouter un nom ou l’adresse TCP/IP d’un ordinateur client dans la liste listen_addresses. Pour autoriser la connexion depuis tout hôte, vous pouvez indiquez le caractère * . Vous pouvez aussi exécuter le serveur avec l’option -i, ce qui est equivalent à listen_addresses = '*'.
3. Veuillez vérifier que vous avez entré correctement le nom et le mot de passe de l’utilisateur.
4. Il est possible que vous utilisez l’authentification par le mot de passe, mais celle-là n’est pas supportée dans SQL Manager.

SQL Manager stocke tous les paramètres dans le registre Windows. Cela signifie que le seul moyen de transférer vos données de la base de données est d’avoir accès au registre Windows. Pour le faire, il vous faut soit télécharger le système d’exploitation depuis l’ancien HDD (si c’est possible), soit ouvrir le fichier du registre avec un programme-éditeur spécial. Si cela marche, vous pouvez décharger la branche ‘HKEY_CURRENT_USER\Software\EMS\PostgreSQL Manager’ dans le fichier *.REG, ensuite de transférer ce fichier sur un nouveau système et enfin, d’ajouter les informations dans le registre en double-cliquant avec le souris sur le fichier.