Utilizando el Pager de PostgreSQL con 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.

Una herramienta de línea de comandos especial que utilizo con frecuencia es el mariadb SQL cliente (o mysql en el mundo de MySQL)—un programa de línea de comandos utilizado para conectarse a bases de datos compatibles con MariaDB. Con él, puedes enviar consultas SQL y otros comandos al servidor de la base de datos.

El cliente SQL basado en CLI de MariaDB

El cliente SQL mariadb tiene múltiples opciones de configuración, una de las cuales es la posibilidad de establecer un telescopiador de terminal. Si estás familiarizado con Linux, probablemente hayas oído hablar o utilizado los telescopiadores more y less. Puedes establecer un telescopiador a través de la variable de entorno PAGER y mariadb lo utilizará automáticamente. Alternativamente, puedes establecer un telescopiador solo para la sesión actual usando el prompt de mariadb. Por ejemplo, para usar el telescopiador less, ejecuta el siguiente comando una vez que estés conectado a la base de datos:

MariaDB SQL

 

pager less

La próxima vez que ejecutes una consulta SQL, podrás navegar a través del conjunto de resultados utilizando las teclas de flecha en tu teclado.

Establecer un telescopiador usando el cliente SQL mariadb

El visor less es útil pero no es el mejor para conjuntos de resultados SQL que se muestran como tablas. Hay una herramienta de código abierto llamada pspg (consulte la documentación y el código fuente en GitHub), inicialmente desarrollada para PostgreSQL pero que posteriormente agregó soporte para varias otras bases de datos, incluyendo MariaDB. Dado que el cliente SQL mariadb puede conectarse a bases de datos MariaDB Xpand, lo probé y funcionó perfectamente. Sigue leyendo para descubrir cómo probarlo.

La forma más fácil de tener una base de datos Xpand en funcionamiento es creando un servicio en SkySQL (es gratis). Sin embargo, también puedes ejecutar una instancia local utilizando Docker. Aquí tienes el fragmento que necesitas:

Shell

 

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

Las bases de datos son más divertidas cuando tienen datos. Un demo de base de datos simple pero interesante está disponible en este sitio web. En sistemas operativos similares a Linux, ejecuta los siguientes comandos (cambia la dirección IP en el último comando si tu base de datos Xpand está corriendo en otro lugar):

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

Recuerda instalar pspg:

Shell

 

apt install pspg -y

Conéctate a la base de datos utilizando el cliente SQL mariadb con un prompt personalizado y más cool que muestra “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.

Conectar a MariaDB Xpand usando un prompt personalizado

Establecer el pspg como visor para la sesión actual:

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;

No hay nada nuevo que ver aquí.

El visor pspg no se activará si solo se muestran unas pocas filas

Sin embargo, intente lo siguiente:

MariaDB SQL

 

select * from countries;

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

El visor pspg renderizando datos de MariaDB Xpand

Puede buscar una fila, ordenar, exportar a CSV, congelar columnas, marcar filas e incluso usar el mouse para interactuar con la herramienta, entre otras cosas.

Algunas de las opciones del menú en 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