MySQL provides an external program called mysqldump that writes a file full of MySQL syntax statements that will recreate a database’s tables and their contents. Back in the Apple II days this kind of file was called an exec file. Windows calls them batch files and Linux calls them shell scripts, of which one common format is the bash file. You can create the same thing with HeidiSQL by right-clicking on the database you want to save or duplicate and selecting Export database as SQL.
Recording what date and time something happened and reporting it back to users is complicated in multi-user web applications.
So many choices! In previous blogs I’ve talked about the traditional LAMP stack, in which the “M” stands for the open-source MySQL database engine. I barely understand the details, but somehow Oracle now owns MySQL. There’s still a free open-source version, often referred to as the community edition. Some open-source developers weren’t happy about the Oracle switch, however, and “forked” the MySQL code into a new project called MariaDB.