Skip to main content

MySQL: Notes

Illustrated: MySQL Logo

Ways to check MySQL version

mysql --version
mysql -V
dpkg -l 'mysql-sever'
mysql -u root -p
How to check MySQL version: mysql --version
How to check MySQL version: mysql --version

Database folder

On Microsoft Windows, by default, MySQL save databases in this folder:

%ProgramData%\MySQL\MySQL Server 5.5\data

Check databases' size

SELECT table_schema AS "Database name", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema;

Export database schema

$ mysqldump -u root -p --no-data wordpress1001 > c:\backup\schema-wordpress1001.sql
Enter password: ****************

Create a dedicated user to backup databases

Give credit to: http://www.fromdual.com/privileges-of-mysql-backup-user-for-mysqldump

Create dedicated mysql user and grant privileges to run backup

$ mysql -u root -p
CREATE USER 'backupdb'@'localhost' IDENTIFIED BY 'passwordhere';
GRANT SELECT,SHOW VIEW,RELOAD,REPLICATION CLIENT,EVENT,TRIGGER ON *.* TO 'backupdb'@'localhost';
GRANT LOCK TABLES ON *.* TO 'backupdb'@'localhost';
FLUSH PRIVILEGES;
QUIT;

Backup all databases

mysqldump -u backupdb -p --all-databases | gzip -c > /backup/databases-$(date '+%Y%m%d%H%M').sql.gz
Backup all databases using dedicated mysql user backupdb
Backup all databases using dedicated mysql user backupdb

Check databases' size

$ mysql -u root -p
SELECT table_schema AS "Database", 
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size(MB)" 
FROM information_schema.TABLES 
GROUP BY table_schema;

Change user's password

ALTER USER 'username'@'localhost' IDENTIFIED BY 'Enter-new-password';

MySQL/MariaDB Client

apt install mycli

MySQL Shell for VS Code

Popular posts from this blog

Powershell: Remove-Item

Use Remove-Item to delete files, folders, and more than that

Linux command: Check Current Shell

What is your current shell ?

Linux command: top

NAME        top - display Linux processes SYNOPSIS        top -hv|-bcHiOSs -d secs -n max -u|U user -p pid -o fld -w [cols]        The traditional switches `-' and whitespace are optional. DESCRIPTION        The  top program provides a dynamic real-time view of a running system.  It can display        system summary information as well as a list of processes or  threads  currently  being        managed  by  the  Linux  kernel.  The types of system summary information shown and the        types, order and size of information displayed for processes are all user  configurable        and that configuration can be made persistent across restarts.        The  program  provides a limited interactive interface for process manipulation ...