Gossamer Forum
Quote Reply
Backup-Restore Plugin
I have a suggested plugin project for all the Links SQL Plugin Programmers.

The plugin would be called Backup/Restore.

I know it may sound like we have this presently, but we do not.

The Backup/Restore in Links does not:

Archive as a "Snapshot" the def's, templates, all SQL data, and allow a full restore, even if you have added new fields to links. The Backup would run automagically 1/day or 1/week, etc.

It could also be smart and do a digest of individual templates, as well as globals, so that it backs up a new set when any changes are made(or backs up just the changed items and can do a stepwise or incremental restore.

All this would be Tar'd/GZip'd with sitename and date in the filename for easy download.

I have a few more ideas on this.

Ease of use will be critical. As will the total reversability of any Restore action.

If programmed correctly, you could restore templates and data to any point in time, and also see what changes were made to specific templates and the globals historically.

If anyone Plugin programmers would like my help in spec'ing this out and flowcharting it, I would love to help.


Comments?
Quote Reply
Re: [webslicer] Backup-Restore Plugin In reply to
I may add this function to my Cron_Manager. It already has the feature to backup a MySQL database, and FTP it to another server (if requested), so adding the templates and .defs shouldn't be that hard Smile

Quote:
It could also be smart and do a digest of individual templates, as well as globals, so that it backs up a new set when any changes are made(or backs up just the changed items and can do a stepwise or incremental restore.

That would be pretty hard to do Unsure It would be easier to simply backup the whole templates/defs folder. After all, its only about 50 files for templates, and 15max for the defs. So a total of 65 odd files, all gzipped up, which wouldn't take up much space at all.

Quote:
If programmed correctly, you could restore templates and data to any point in time, and also see what changes were made to specific templates and the globals historically.

Maybe this would be possible by opening up the specific tar.gz file, reading its contents, and posting back a list of the files found in it. Then it would be up to the user to select which ones they want to export. For the compare function, it may be possible to use GT's built in 'compare' feature (found in the 'edit templates' section).

Cheers

Andy (mod)
andy@ultranerds.co.uk
Want to give me something back for my help? Please see my Amazon Wish List
GLinks ULTRA Package | GLinks ULTRA Package PRO
Links SQL Plugins | Website Design and SEO | UltraNerds | ULTRAGLobals Plugin | Pre-Made Template Sets | FREE GLinks Plugins!
Quote Reply
Re: [Andy] Backup-Restore Plugin In reply to
Hi, Andy;


That functionality in your Chron Manager would be excellent!

But it would have to back up everything and be able to recreate any missing fields/tables, defs, templates, template sets and globals to be 100% useful. (Did I miss anything there?)


I know some of the features I mentioned would take a lot of head scratching and a good amount of effort in implementing, but that is what would make it valuable.

To be able to tell that link.html had 5 versions in october 2002, and be able to list them and the differences easily would be a very powerful tool. In effect, you would have a version control system, don't you think?

A retrievable text listing of the versions or dates of files backed up would be important if the individual day/snapshot restore feature is not included.

You did not mention about recreating the missing custom Links, Reviews, Globals etc fields and any custom tables. Could you hazard a shot on how to do that?

It can take hours if 30 or 40 custom fields have been added.

The plugin should be extremely EASY to use and powerful, so it will be a lot of work to get to that point.
Quote Reply
Re: [webslicer] Backup-Restore Plugin In reply to
>>>You did not mention about recreating the missing custom Links, Reviews, Globals etc fields and any custom tables. Could you hazard a shot on how to do that? <<<

So you basically want to restore only certain tables? (i.e. lsql_Links, lsql_Category etc) to restore missing links etc?

>>>To be able to tell that link.html had 5 versions in october 2002, and be able to list them and the differences easily would be a very powerful tool. In effect, you would have a version control system, don't you think?<<<
...and....
>>>The plugin should be extremely EASY to use and powerful, so it will be a lot of work to get to that point. <<<

Indeed it would. It wouldn't be fast though, because it would require opening up each tag.gz file, reading the file date on a certain file, and then passing it back (could be huge is working on multiple backup files). It may work if you only want to compare a select few backup files.

>>>A retrievable text listing of the versions or dates of files backed up would be important if the individual day/snapshot restore feature is not included. <<<

Definatly.

I'll have a think/look over it tomorrow. I really need to get this Thumbnail plugin completed, and tested first though :)

Cheers

Andy (mod)
andy@ultranerds.co.uk
Want to give me something back for my help? Please see my Amazon Wish List
GLinks ULTRA Package | GLinks ULTRA Package PRO
Links SQL Plugins | Website Design and SEO | UltraNerds | ULTRAGLobals Plugin | Pre-Made Template Sets | FREE GLinks Plugins!