Changes

From Amahi Wiki
Jump to: navigation, search
720 bytes added ,  15:54, 18 June 2020
{{MessageBox|backgroundcolor = #faa|image =Warning.png|heading =WARNING|message = This is recommended only for advanced users, proceed with caution.}}It's good practice to periodically backup up your database. This functionality is coming to Amahi soon, but until then there is a simple way to automatize automate it. This can be done using [http://members.multimaniasourceforge.co.uknet/wipe_outprojects/automysqlbackup/ AutoMySQLBackup]script.__NOTOC__
== Features ==
* Backup mutiple multiple MySQL databases with one script. (Now able to backup ALL databases on a server easily. no longer need to specify each database seperatelyseparately)* Backup all databases to a single backup file or to a seperate separate directory and file for each database.
* Automatically compress the backup files to save disk space using either gzip or bzip2 compression.
* Can backup remote MySQL servers to a central server.
* Can e-mail the backup log to any specified e-mail address instead of "root". (Great for hosted websites and databases).
* Can email the compressed database backup files to the specified email address.
* Can specify maximun maximum size backup to email.
* Can be set to run PRE and POST backup commands.
* Choose which day of the week to run weekly backups.
== What it does ==
* Every day it will run mysqldump and gzip will dump your specified databases to the ''/var/hda/files/dbdbbackup/daily'' directory, it will rotate daily backups weekly so you should never have more than 7 backups in there..* Every Saturday it will again backup the databases you have chosen but they will be placed into ''/var/hda/files/dbdbbackup/weekly'', these will be rotated every 5 weeks so there should never be more than 5 backups in there..* Every 1st of the month it will create a backup of all databases and place them into ''/var/hda/files/dbdbbackup/monthly''. These will never be rotated so it will be up to you to do your own house keeping. I would suggest taking a copy of this offline every month or two so that if you have a hard drive failure you will be able to restore your database.
== How to Install ==
<br /><b><u><big>Ubuntu</big></u></b>* install via apt-get sudo apt-get install automysqlbackup* Create a share called '''Database''' with edit the path of ''config file located at <code>/etc/default/automysqlbackup</varcode> sudo nano /hdaetc/filesdefault/db''.automysqlbackup* Download At the bare minimun, in the config file, edit the script [httpBACKUPDIR variable* run automysqlbackup to see if it works (you should get backups added to your backupdir directory: sudo automysqlbackup* Edit cron: sudo crontab -e* add the following for running cron everyday at midnight 0 0 * * * /usr/downloads.sourceforge.netsbin/projectautomysqlbackup<br /automysqlbackup><b><u><big>Fedora</AutoMySQLBackupbig></AutoMySQLBackup%20VER%202.5u></automysqlbackup-2b>* Create a share called '''dbbackup'''.5.1-01.sh AutoMySQLBackup] file * Download the script to ''/tmp'' directory. <pre style="white-space: pre-wrap; word-break: keep-all;">cd /tmp wget http://downloads.sourceforge.net/project/automysqlbackup/AutoMySQLBackup/AutoMySQLBackup%20VER%202.5/automysqlbackup-2.5.1-01.sh</pre>* Some changes will need to be made for this to work on your HDA. Use your favorite text editor and As '''root''' user, update as follows:lines indicated in ''USERNAME=debianautomysqlbackup-2.5.1-01.sh'' on line 39 toread as follows:<pre>Line 39: USERNAME=root''PASSWORD='' on line Line 42 to: PASSWORD=hda''BACKUPDIR="/srv/backup/db" on line Line 51 to: BACKUPDIR="/var/hda/files/dbdbbackup"''MAILADDR="maintenance@example.com"'' on line Line 65 to: MAILADDR="root"''DBEXCLUDE=""'' on line Line 76 to: DBEXCLUDE="information_schemaperformance_schema mysql"''CREATE_DATABASE=no'' on line Line 79 to: CREATE_DATABASE=yes''LATEST=no'' on line Line 94 to: LATEST=yes</pre><br /> * Copy Rename and copy the file ''automysqlbackup-2.5.1-01.sh'' from ''/tmp'' to ''/usr/local/bin'' and set the permissions: <pre>cd /usr/local/bin cp /tmp/automysqlbackup-2.5.1-01.sh .automysqlbackup chmod 755 automysqlbackup-2.5.1-01.sh</pre>* Set ''automysqlbackup'' as a daily cron job(Optional): <pre>cd /etc/cron.daily ln -s /usr/local/bin/automysqlbackup-2.5.1-01.sh</pre> == Tips ==* When it's run To change day of week (1=Monday thru 7=Sunday; defaults to 6=Saturday) for backup, update the first time, it will create number on the directory structure automatically. It will look like thisfollowing line in ''automysqlbackup'' as '''root''' user: dailyLine 85: latestDOWEEKLY=6 monthly* To run anytime, as root do the following: weeklyautomysqlbackup* Each time it This script is executed, the script will backup all well documented. Options can be easily customized to meet your databases and tablesspecific HDA requirements. Each database will The guidance can be exported found in to the ''automysqlbackup'', starting at line 110.sql  '''NOTE:' file, zipped, and stpred in its own folder for '' When it's run the respective periodfirst time, i.e. latest, daily, etc. The sql it will include create the database/table create syntax as welldirectory structure automatically if it does not already exist.
12,424

edits