The Forum has been Updated
The code has been upgraded to the latest .NET core version. Please check instructions in the Community Announcements about migrating your account.
Is there a simple to follow guide that explains how to set up a Cron job using SSH on a Linux server to back up a MySQL database on a daily basis and email me to confirm if successful or not?
I've found several which seem to be very long winded and often over my head
I've found several which seem to be very long winded and often over my head
Posted
it shouldn't be too longwinded. I assume you wish to execute a local script to back up a hosted db?
what flavour of Linux is your client machine ?
what flavour of Linux is your client machine ?
Posted
Hi Huw, CentOS6 x86_64 and yes, a local to hosted
I use MySQL Workbench 6.3 and at the moment am doing it manually
I use MySQL Workbench 6.3 and at the moment am doing it manually
Posted
Ok, I will post something for you later today
Posted
basically you can connect via ssh and backup your database from the command line using something like the following, it should backup your database to your local machine, just change the necessary values
ssh -C remoteuser@remote_host mysqldump -u MYSQL_USER -p'MYSQL_PASSWORD' YOUR_DATABASE | gzip -c | cat > ~/backup.sql.gz
you then need to add a cron job, probably for the root user so run <b>crontab -e -u root </b>and add a line like below and save it. It will run at 6am every day
0 6 * * * ssh -C remoteuser@remote_host mysqldump -u MYSQL_USER -p'MYSQL_PASSWORD' YOUR_DATABASE | gzip -c | cat > ~/backup.sql.gz
change the cron string 0 6 * * * to suit your needs as below
•Crontab Format:
MIN HOUR DOM MON DOW CMD
•Format Meanings and Allowed Value:
•MIN Minute field 0 to 59
•HOUR Hour field 0 to 23
•DOM Day of Month 1-31
•MON Month field 1-12
•DOW Day Of Week 0-6
•CMD Command Any command to be executed.
ssh -C remoteuser@remote_host mysqldump -u MYSQL_USER -p'MYSQL_PASSWORD' YOUR_DATABASE | gzip -c | cat > ~/backup.sql.gz
you then need to add a cron job, probably for the root user so run <b>crontab -e -u root </b>and add a line like below and save it. It will run at 6am every day
0 6 * * * ssh -C remoteuser@remote_host mysqldump -u MYSQL_USER -p'MYSQL_PASSWORD' YOUR_DATABASE | gzip -c | cat > ~/backup.sql.gz
change the cron string 0 6 * * * to suit your needs as below
•Crontab Format:
MIN HOUR DOM MON DOW CMD
•Format Meanings and Allowed Value:
•MIN Minute field 0 to 59
•HOUR Hour field 0 to 23
•DOM Day of Month 1-31
•MON Month field 1-12
•DOW Day Of Week 0-6
•CMD Command Any command to be executed.
Posted
Thanks Huw, I'll have a go at setting it up later tomorrow
Email Member
Message Member
Post Moderation
FileUpload
If you're having problems uploading, try choosing a smaller image.
Preview post
Send Topic
Loading...