En este tutorial te voy a mostrar cómo instalar el gestor de base de datos PostgreSQL también llamado PSQL sobre un dispositivo Android, sin necesidad de que el mismo este rooteado, gracias al poder de Termux.
Si has seguido mis tutoriales sobre Termux habrás visto que anteriormente ya instalamos MySQL, PHP, GCC, Node JS y Python.
Requisitos
Lo único que necesitas es un móvil o tableta con Android e instalar la app Termux.
Instalar PostgreSQL en Android
Ejecuta:
pkg install postgresql
Si pregunta, acepta. Después espera a que se termine de instalar.
Configurar directorio de datos
Psql necesita guardar los datos en algún directorio. Yo recomiendo crearlos en /home
, así que procedemos a ejecutar:
mkdir ~/datos_psql
Asociar directorio de datos en psql
Ahora ejecuta initdb
con el directorio en donde se guardarán los datos de PostgreSQL así:
initdb ~/datos_psql
Hasta ahora se debe ver así:
Encender servidor
PostgreSQL ya está instalado y el directorio de datos está configurado. Ahora lo iniciamos con:
pg_ctl -D ~/datos_psql start
Como ves estamos invocando a pg_ctl
indicando el directorio de datos. La última opción indica que queremos encender el servidor.
Apagar servidor
Por ahora no lo necesitamos, pero si quieres apagarlo más tarde simplemente ejecuta:
pg_ctl -D ~/datos_psql stop
Es casi lo mismo de arriba pero ahora se detiene en lugar de que comience.
Crear base de datos e iniciar sesión
Antes de ingresar a la CLI de PostgreSQL hay que crear una base de datos con createdb nombre_bd
en mi caso:
createdb probando_psql
Después iniciamos con psql nombre_bd
en mi caso:
psql probando_psql
Con la siguiente salida:
Con esto ya hemos entrado a la CLI de psql y podemos ejecutar consultas de todo tipo.
Creación de superusuario
Aunque anteriormente no iniciamos sesión con un usuario, podemos crear uno. Yo lo configuré para software en donde se necesita acceder a la base de datos con un usuario y una contraseña. Para ello ejecutamos:
createuser --superuser --pwprompt parzibyte
Obviamente cambiando parzibyte
por tu nombre de usuario. La opción --pwprompt
es para que pregunte por la contraseña, justo como se ve en la imagen:
Probando PostgreSQL en Android
Hasta ahora tenemos una instancia de PostgreSQL corriendo sobre Android gracias a Termux. Ya configuramos todo y creamos bases de datos, ahora es momento de probar con un poco de consultas sql:
create table personas(nombre text);
insert into personas(nombre) values('Parzibyte');
select * from personas;
Todo funciona perfectamente, aquí la prueba en mi teléfono Android:
Conclusión
En resumen los comandos serían algo así:
pkg install postgresql
mkdir ~/datos_psql
initdb ~/datos_psql
pg_ctl -D ~/datos_psql start
createdb probando_psql
psql probando_psql
Próximamente traeré un ejemplo de una aplicación web que se ejecuta sobre Termux y consume una base de datos PostgreSQL.
Como siempre, te invito a leer más sobre Termux y a conocer más sobre PostgreSQL.
Gracias:.
No me conecta, en esta linea no falta algo “createuser –superuser –pwprompt parzibyte”?
He probado instalando un cliente sql y poniendo de conexion 127.0.0.1:5432 pero .. si el user parzibyte no se la pwd, aparte que como no llega…