Home  >  Article  >  Database  >  How to write a script for Vps to automatically back up web and mysql databases under Linux

How to write a script for Vps to automatically back up web and mysql databases under Linux

WBOY
WBOYforward
2023-05-26 12:34:061169browse

1. Back up the web folder
1. Back up the /home/users/public_html directory
2. Modify the crontab to run at 3:22 on the first day of every week

Copy code The code is as follows:

22 3 * * 0 root run-parts /etc/cron.weekly

3. Copy the script to the /etc/cron.weekly directory
4. Modify permissions

Copy the code. The code is as follows:

chmod 0755 /etc/cron.weekly/webbackup.sh

5. The script is as follows

Copy code The code is as follows:

#!/bin/sh
filename=`date %y%m%d`
backup_dir="/root/dropbox/backup /web"
#delete all files 10 days ago
find $backup_dir -mtime 30 -name "*" -exec rm -rf {} \;
#each user you want backup
users= "baidu sina"
for user in ${users}; do
tar zcvf $backup_dir/$user$filename.tar.gz /home/$user/public_html
done

6 , note that the filename sentence is not a single quote, it is above the tab key
7. For the public_html directory of the user to be backed up, fill in the user into users
2. Daily backup of mysql database

1. For security reasons, create a new user backup, use a strong password (it can be automatically generated), and the global permissions are select, lock tables
2. Start execution at 3:00 every day, modify crontab
3 , copy the script to /etc/cron.daily
4, modify permissions
5, script content

Copy code The code is as follows:

#!/bin/sh
dbuser="backup"
dbpassword="youpassword"
datas="db1 db2 db3"
filename=`date %y%m%d`
bin_dir="/usr/local /mysql/bin"
backup_dir="/root/dropbox/backup/mysql"
#delete all files 10 days ago
find $backup_dir -mtime 10 -name "*" -exec rm -rf { } \;
#do each database backup
for data in ${datas}; do
$bin_dir/mysqldump --opt -u$dbuser -p$dbpassword $data | gzip > $backup_dir/ $data$filename.sql.gz
done

6. Same as the previous item 6
7. Fill in datas

for the database to be backed up.

The above is the detailed content of How to write a script for Vps to automatically back up web and mysql databases under Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete