Setting up a database server to use with my nodejs server on Android in Termux

Following from my blog post on nodejs on android I now wanted to install a database server so I could develop a simple CRUD web app and doing it all on Android.

MariaDB is a free and open source fork of MySQL and is what is available under Termux, which I already have installed and working. The following are the commands I used to install MariaDB.

$ apt update && apt upgrade
$ apt install mariadb

Next I started the server using

$ mysqld

What I learnt from doing this is that I can no longer run commands in the Termux session and what I should have done was run it in the background as follows. I could have also started a new Termux session.

$ mysqld_safe -u root &

But now I get the following error, "mysqld_safe A mysqld process already exists". I found out how to handle this as follows

$ killall mysqld mysqld_safe

This may take a few seconds and I can verify that no mysql processes are still running using the following command

$ ps aux | grep mysqld

Next I wanted to create a database and a table and add some rows and query that table

$ mysql -u root

I got the following error, "ERROR 1698 (28000): Access denied for user 'root'@'localhost'". This bug report comment explains in detail what was happening, not a bug really. I needed to use the second account to login.

I cannot use tsu because my device is not rooted, "/data/data/com.termux/files/usr/bin/tsu: 144: exec: : Permission denied" and I did not make note of the second all priveleges account after install. I just reinstalled termux and mariadb because reinstalling mariadb was not displaying the second account info like the first time. Guessing I needed to do a clean install which I think requires tsu. Later learnt that the account was the same as my Termux account and I could figure this out using the whoami command.

I was now able to login and create my table and add some rows.

MariaDB in Termux

In a future blog post I will create a nodejs web app to connect to the database and display the rows.


Popular posts from this blog

My Experience Setting Up FLOW's TG2492LG-FLO WIFI Modem

You can sign up for Elon Musks Space X Star Link Satellite Internet from Trinidad and Tobago

Tech in Trinidad and Tobago Budget 2022