Utilisation du Pager PostgreSQL avec MariaDB Xpand

I’m not an anti-GUI person. In fact, I wrote three books about web GUI development with Java. However, I also like the command-line interface (CLI), especially text-based UIs. After a year of exploring MariaDB and the DevOps world, I got to discover and play with many text-based CLI tools that I didn’t know even existed. These tools are especially useful when connecting to remote servers that don’t have a GUI.

Un outil CLI spécial que j’utilise fréquemment est le mariadb SQL client (ou mysql dans le monde MySQL)—un programme CLI utilisé pour se connecter à des bases de données compatibles MariaDB. Avec cela, vous pouvez envoyer des requêtes SQL et d’autres commandes au serveur de base de données.

Le client SQL basé sur CLI MariaDB

Le client SQL mariadb possède de nombreuses options de configuration, dont l’une est la possibilité de définir un navigateur de terminal. Si vous connaissez Linux, vous avez probablement entendu parler ou utilisé les navigateurs more et less. Vous pouvez définir un navigateur via la variable d’environnement PAGER et mariadb l’utilisera automatiquement. Alternativement, vous pouvez définir un navigateur uniquement pour la session en cours à l’aide du prompt mariadb. Par exemple, pour utiliser le navigateur less, exécutez la commande suivante une fois que vous êtes connecté à la base de données:

MariaDB SQL

 

pager less

La prochaine fois que vous exécuterez une requête SQL, vous pourrez naviguer dans le jeu de résultats à l’aide des touches fléchées de votre clavier.

Définition d’un navigateur à l’aide du client SQL mariadb

Le pager less est utile mais n’est pas le meilleur pour les ensembles de résultats SQL affichés sous forme de table. Il existe un outil open-source appelé pspg (voir la documentation et le code source sur GitHub), initialement développé pour PostgreSQL mais qui a ensuite ajouté la prise en charge de plusieurs autres bases de données, y compris MariaDB. Puisque le client SQL mariadb est capable de se connecter aux bases de données MariaDB Xpand, j’ai décidé d’essayer, et cela a fonctionné parfaitement. Continuez à lire pour découvrir comment l’essayer.

La manière la plus simple d’obtenir une base de données Xpand opérationnelle est de créer un service sur SkySQL (c’est gratuit). Cependant, vous pouvez également exécuter une instance locale en utilisant Docker. Voici le fragment dont vous avez besoin:

Shell

 

docker run --name xpand \
  -d \
  -p 3306:3306 \
  --ulimit memlock=-1 \
  mariadb/xpand-single

Les bases de données sont plus amusantes lorsqu’elles contiennent des données. Une base de données de démonstration simple mais intéressante est disponible sur ce site web. Sur les systèmes d’exploitation similaires à Linux, exécutez les commandes suivantes (modifiez l’adresse IP dans la dernière commande si votre base de données Xpand est en cours d’exécution ailleurs) :

Shell

 

sudo apt install curl -y
curl https://www.mariadbtutorial.com/wp-content/uploads/2019/10/nation.zip --output nation.zip
unzip nation.zip
mariadb -h 127.0.0.1 -u xpand < nation.sql
rm nation.zip nation.sql

N’oubliez pas d’installer pspg:

Shell

 

apt install pspg -y

Connectez-vous à la base de données en utilisant le client SQL mariadb avec un prompt personnalisé et plus cool qui affiche « Xpand » :

Shell

 

mariadb -h 127.0.0.1 -u xpand --prompt="Xpand [\d]> " nation

I learned this tip from my colleague Patrick Bossman (Product Manager at MariaDB) during a webinar on MariaDB Xpand + Docker. I recommend watching it if you want to learn more.

Se connecter à MariaDB Xpand à l’aide d’un invite personnalisé

Définissez le pspg pour la session en cours :

MariaDB SQL

 

pager pspg -s 14 -X --force-uniborder --quit-if-one-screen

A nice feature in pspg is that it shows the fancy text-based UI only when it makes sense (--quit-if-one-screen). So if your query returns only a few rows that fit in the screen, it will just show them right there on the screen as usual. For example, try running the following query:

MariaDB SQL

 

select * from continents;

Rien de nouveau à voir ici.

Le pspg ne s’activera pas si seulement quelques lignes sont affichées

Cependant, essayez ce qui suit :

MariaDB SQL

 

select * from countries;

A navigable text-based interface allows you to explore the data more efficiently.

Le pspg affichant les données de MariaDB Xpand

Vous pouvez rechercher une ligne, ordonner, exporter au format CSV, figer des colonnes, marquer des lignes et même utiliser la souris pour interagir avec l’outil, entre autres choses.

Certaines des options de menu dans pspg

I hope this tool helps you the next time you have to interact with a database via SSH and the command line. You can find more information about how to install pspg on your operating system, configuration options, and documentation on the GitHub repository for the project. If you want to learn more about distributed SQL and the MariaDB Xpand database, watch this short video, take a look at this datasheet, and explore some of the blog posts and documentation.

Source:
https://dzone.com/articles/using-the-postgressql-pager-with-mariadb-xpand