How to implement scheduled backup of MySQL in Linux

How to implement scheduled backup of MySQL in Linux

In actual projects, the database needs to be backed up frequently to prevent emergencies. Some time ago, my database was invaded and all the data was lost. Fortunately, it was just a test database at the time. However, after this crisis, I began to realize this problem.

First write a test database backup command:

#!/bin/sh
DB_USER="root"
DB_PASS="1234"
DB_DATA_NAME="hzl"
BakDir="/data/mysql-data-back"
echo "/usr/bin/mysqldump"
echo "-------------------------------------------" >> $BakDir
echo $(date +"%y-%m-%d %H:%M:%S") >> $BakDir
 
cd $BakDir
/usr/bin/mysqldump --no-defaults -u$DB_USER -p$DB_PASS $DB_DATA_NAME|gzip > $BakDir/db_`date +%F`.gz
 
exit 0

The command is as above, written directly into a shell file. If the file runs successfully, a backup .gz file can be manually generated in the directory.

Please note that the .sh file cannot be run at first.

chmod +x sqlAutoBak.sh

Okay, the above is relatively simple, let’s start the main part below, which is to make the script execute automatically every day.

1. Confirm whether crontab is installed

crontab -l

You can see a list of executed scripts, indicating that the installation was successful. If you don't have one, just find an installation tutorial online.

[root@VM_0_4_centos ~]# crontab -l
*/1 * * * * /usr/local/qcloud/stargate/admin/start.sh > /dev/null 2>&1 &

2. Add the backup script to the crontab service

crontab -e

Press the a key to enter edit mode

Enter 0 */1 * * * /home/work/start-service.sh

Press ctrl+c to exit edit mode

Press shift+: and enter wq to exit crontab

Then see the results

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • MySQL multi-instance deployment and installation guide under Linux
  • MySQL 8.0.25 installation and configuration tutorial under Linux
  • How to start multiple MySQL databases on a Linux host
  • Steps and pitfalls of upgrading linux mysql5.5 to mysql5.7
  • Solve the problem of no my.cnf file in /etc when installing mysql on Linux
  • Steps to install MySQL using Docker under Linux
  • Detailed explanation of how to manually deploy a remote MySQL database in Linux
  • Detailed explanation of the idea of ​​using mysqldump+expect+crontab to implement mysql periodic cold backup in linux
  • Aliyun Linux compile and install php7.3 tengine2.3.2 mysql8.0 redis5 process detailed explanation
  • How to reset the root password in Linux mysql-5.6
  • Use MySQL to open/modify port 3306 and open access permissions in Ubuntu/Linux environment
  • MySQL scheduled backup solution (using Linux crontab)
  • Detailed tutorial on installing MySQL database in Linux environment
  • How to automatically backup mysql remotely under Linux
  • Linux MySQL root password forgotten solution
  • Detailed tutorial on installing mysql-8.0.20 under Linux
  • How to use MyCat to implement MySQL master-slave read-write separation in Linux

<<:  The principle and implementation of js drag effect

>>:  Let's talk about Vue's mixin and inheritance in detail

Recommend

Sample code for deploying Spring-boot project with Docker

1. Basic Spring-boot Quick Start 1.1 Quick start ...

Three ways to prevent MySQL from inserting duplicate data

Create a new table CREATE TABLE `person` ( `id` i...

Linux implements the source code of the number guessing game

A simple Linux guessing game source code Game rul...

HTML data submission post_PowerNode Java Academy

The HTTP request methods specified by the HTTP/1....

Explanation of the concept and usage of Like in MySQL

Like means "like" in Chinese, but when ...

js implements a simple shopping cart module

This article example shares the specific code of ...

Solution to forgetting MySQL root password in MACOS

MySQL is a relational database management system ...

Implementation of one-click TLS encryption for docker remote api

Table of contents 1. Change the 2375 port of Dock...

Don’t bother with JavaScript if you can do it with CSS

Preface Any application that can be written in Ja...

How to mount a disk in Linux

When using a virtual machine, you may find that t...

JS implements random roll call system

Use JS to implement a random roll call system for...

Uniapp implements DingTalk scan code login sample code

Since Uniapp does not have DingTalk authorization...

mySQL server connection, disconnection and cmd operation

Use the mysql command to connect to the MySQL ser...

Nginx monitoring issues under Linux

nginx installation Ensure that the virtual machin...