The databases are actually directories. Their names are identical (including case) to what you named your Mysql directories. For example, say you created a database called My_Billing_DB. Do a search for that on your *nix box. You will find a directory matching that name. The contents of that directory will be all the tables within it, also matching the names of your tables. There will be 3 files for each table, with extensions frm, MYI, and MYD. For example, say you had within My_Billing_DB database a table names My_Customers. Then in the My_Billing_DB directory you would find My_Customers.frm, My_Customers.MYD, and My_Customers.MYI. The file with MYD extension contains the actual data residing in the table. The other 2 contain format and layout of the table. By backing up those 3 files, you back up the entire table.
Now look at the parent directory of My_Billing_DB. You will see directories representing your other databases (if any) there. The directories there will match whatever you see when you type SHOW DATABASES at the mysql prompt. One of the directories will be mysql. That is the administrative database that Mysql refers to when deciding permissions. Go into it, and you will see files representing such tables as column_privs, db, user, ... Basically, the tables you would see if you were to do USE MYSQL and SHOW TABLES at the mysql prompt. Just back up this entire mysql database, and you are basically backing up all the tables within it - all your user information and permissions