Book Image

The MySQL Workshop

By : Thomas Pettit, Scott Cosentino
5 (1)
Book Image

The MySQL Workshop

5 (1)
By: Thomas Pettit, Scott Cosentino

Overview of this book

Do you want to learn how to create and maintain databases effectively? Are you looking for simple answers to basic MySQL questions as well as straightforward examples that you can use at work? If so, this workshop is the right choice for you. Designed to build your confidence through hands-on practice, this book uses a simple approach that focuses on the practical, so you can get straight down to business without having to wade through pages and pages of dull, dry theory. As you work through bite-sized exercises and activities, you'll learn how to use different MySQL tools to create a database and manage the data within it. You'll see how to transfer data between a MySQL database and other sources, and use real-world datasets to gain valuable experience of manipulating and gaining insights from data. As you progress, you'll discover how to protect your database by managing user permissions and performing logical backups and restores. If you've already tried to teach yourself SQL, but haven't been able to make the leap from understanding simple queries to working on live projects with a real database management system, The MySQL Workshop will get you on the right track. By the end of this MySQL book, you'll have the knowledge, skills, and confidence to advance your career and tackle your own ambitious projects with MySQL.
Table of Contents (22 chapters)
1
Section 1: Creating Your Database
6
Section 2: Managing Your Database
11
Section 3: Querying Your Database
16
Section 4: Protecting Your Database

Scheduling backups

One thing that is not included in mysqldump or mysqlpump is the scheduling of backups. These tools know how to create a backup but not when to. So, this is something where you must use the scheduling services provided by the platform you're using. This is Cron on Linux and macOS, or Task Scheduler if you are on Windows.

Besides creating backups, you probably want to automate cleaning up the oldest backups.

It might be a good idea to put the actual mysqldump or mysqlpump command into a shell script or (on Windows) in a .bat file. Then, you can check returncode of the process and send an email and/or monitoring alert if the backup fails. You can also use the same script to copy the backup to the cloud or another server.

A very basic scheduled backup on Linux can be created using /etc/cron.d/mysqldump with the following contents:

0 4 * * * root /user/bin/mysqldump -A > /data/backups/mysql.sql

This creates a backup every day at 04:00AM of all...