What's happening with backup for 5.7?2 users found helpful
There is lots of detail there looking like it is close - including sections on "Existing Backups" (stating "You have no backups available.") and "Create new Backup", an options to "Use Encryption", a "Run Backup" button, even a short paragraph describing "Important Information about Backup & Restore"...however it has never been implemented (or if it has recently, my apologies, but I can't find any information about it!)
If it is as expected and it still hasn't been done, what's happening with backup for 5.7?
If it is something not on the cards soon, can we please at least have someone with some more smarts than me put together some documentation about how best to manually backup or setup a cron job for it etc?
Moreover, I don't think you need the concrete directory since you can reinstall that from the source if need be (assuming you can get the right version).
The moving site info is fundamentally a manual database export and process to backup files (and then restore to a new location)...isn't this what backup/restore should be?
I'm struggling to understand why the backup/restore functionality for 5.7 can be so different from that we enjoyed in pre-5.7 versions.
A very huge Add-On which can do A LOT. It's been also developed for other CMS'es around, by the same developer. I'd say he has more than enough experience to be able to build something awesome. If you have questions about the Add-On, you should ask the developer though through the support or by email (he probably won't check the forums every day).
Obviously I'm not happy about that - and I'm sure that others wouldn't be either - but having an answer regardless is better than hanging expecting it "sometime".
If you believe there has been something published, I would appreciate it if you (or anyone) are able to point me to that discussion. Thanks.
First post by "andrew" (core developer)
I'm sure there are other threads, but couldn't find them using search. Could have been on GitHub too, I don't know. Maybe a core developer or Franz could step in here and let you know for 100% what's decided on this "issue".
I personally never saw the value in that feature, as that backup file alone is pretty much useless to restore a concrete5 install, especially in terms of any kind of disaster recovery. It was perhaps handy to do just before a major operation like an update or a big package install, but again it was never a full backup, it was a _database_ backup.
A real backup of concrete5 (or any data driven application) requires the database AND the files relevant to that snapshot. Files include not just the ones uploaded to a file manager, but config files, add-ons, etc. It's both that allow you to completely restore a backup.
Backup Pro on the other hand does appear to handle both the database and the files. My impression is that this is actually a true backup process, achieving the same if you managed the site at the server level and took a database dump and zip of the install.
What looks great about it is that it is able to be triggered by a cron job, meaning you can get truly automatic backups happening. Then being able to send those to something like Amazon S3 for storage is gold. (I've not used it, but the screenshots clearly show this stuff).
So there's a huge amount of functionality here that was never included in 5.6.
Alternatively, I always encourage people to learn how to take backups from within their hosting control panels. cPanel is the most common control panel out there and it literally takes three clicks to download a database dump and full backup.
broken down the question is:
why is there a backup UI when there's no functionality?
you are answering a philosophical approach on how someone should do a backup.
but just let me explain why the 5.6 backup was good: there is more out there than plesk.
and in case you get just a ftp-account and the mysql-credentials without phpmyadmin (or similar) and/or you just don't want to fiddle around with that kind of UI it was quite easy to backup and restore. create a backup and get the files&packages-directory via FTP. that's it. if you fuckup something make a clean install of 5.6, upload your files&packages-directory and make a restore.
or test a new package. it sucks, so restore the DB backup and delete the package.
give your end-customer the good feeling of creating a backup before they start changing their website.
because it's not your way to handle backups it might be quite useful for others.
and btw. the page is still in the v8 with the same amount of functionality: none.
I've now read this github link and am a but concerned. I appreciate that backup as it was in 5.6+ didn't have all the options that some people want/need, but many (many) C5 users aren't power users and are often on shared hosting environments.
The simple functionality of a database backup/restore from within the web interface is all that should be needed (and all that is being asked to re-implement).
With regard to the argument of a complete backup in the case of catastrophic failure, in most cases I would guess that the website isn't the only location for images and other files, however it will be for the database. I believe that most people would be happy with a process in the case of failure:
1. Reinstall C5
2. Restore the database from an appropriate backup
3. Upload other files
By "other files", I'm referring to file manager files (eg. images, pdf files, other downloads, etc) and theme/add-on specific files that have been manually modified offline. All of these would normally have a local/offline source copy anyway.
And those that aren't happy with the above approach, should either buy the $40 add-on, or be OK to go more technically deeper to get more functionality/capability...right?
I just think the discussion seems to be happening between guys that are very happy with command lines, setting up cron, self managed hosting environments, etc; many users aren't.
When the database is restored it will also contain all the file manager records/references, which will point to folders/files that no longer exist. You'd then have to replace _every_ file in the file manager with their original file. On a small site with only a handful of files this might not be a big deal, but on anything larger this is going to be time consuming and error prone.
But a potentially bigger problem is that original files aren't always kept together, they're uploaded by multiple users, directly by clients, etc. People install packages direct from the marketplace too and you have to ensure you reinstall the correct versions.
You have to get all the package and theme files in place _before_ you do the restore, otherwise concrete5 is going to try to load up PHP code that doesn't exist and crash.
So although a database backup has value, in that it's going to contain your pages and text content, it's only half of what you need. The above restoration process ends up _more_ technical than learning how to use some sort of process that takes a backup of everything in the first place.
Good backup options are:
- Host based backup systems (like R1Soft, etc), or if you do have the technical skills some backup process of your choosing
- + Taking mysql dumps and full site file backups using something like cPanel
- Using a complete backup add-on (like Backup Pro)
If you don't have available any of the options above, FTP is quite a slow process to backup site files but it can be done. Personally I'd always look for an alternative, but you can speed things up by ignoring the concrete folder. It's still better than just taking just the database dump.
Then for the database, if you don't have something on the server ready to use, there are single file scripts out there that can be used in the same way as something like phpmyadmin. You just drop them into the webspace and load it up. Adminer is one I've used a few times where I've had limited access -http://www.adminer.org/
This is where I think that if concrete5 is going to include a backup facility it should be all or nothing, offering just the database is potentially providing a false sense of security.
have there been any complaints from normal c5-users about the 5.6 backup?
or was the reason to remove the functionality just "this is not the power user way to do backups, so lets remove it." ?
As well as being functionally insufficient, the c5.6 backup has timeout issues on any site that growns beyond trivial. A similar strategy on 5.7 would timeout sooner as the database is more complex. It wouldn't have been a simple translation of the 5.6 script because 5.7 includes secondary indexes and dependencies between tables that the 5.6 script had no understanding of.
So for 5.7 there would have been a fair bit of work involved creating an in-site backup script, then once implemented it would have provided dubious benefit and a false sense of security. The mistake in 5.7 was leaving a place holder page in the dashboard, not in failing to port the backup script from 5.6.
Personally I know enough of the deeper technical stuff to be dangerous, but simply don't know enough to to work out the best way to do effective backups myself. And although I have often thought of educating myself, other things end up taking priority...plus that doesn't solve the issue for (I believe) a majority of the community that may not even have my level of knowledge/experience, let alone more.
I have dozens of C5 sites, more than not still on C5.6+, however we're doing new sites on 5.7 and this is simply a safety concern (although looking at the detailed post above from @mesuva, it looks like I may have problems if we ever needed to go through the restore process anyway).
I think it would be a mistake not to include backup as C5 functionality moving forward, but regardless of it being future functionality or not, is there documentation anywhere that can help us do backups using cPanel or even creating a cron job? I would appreciate it if someone with more knowledge than I could put together a step by step how to or some other documentation specific to a C5 environment. Is that possible?
- Log into cPanel
- Go to the 'Backup' section
- Under the 'Download a Home Directory Backup' section, click on the 'Home Directory' button. That will download a zip containing files.
- Scroll a bit further down to the 'Download a MySQL Database Backup' section. Click on the name of your database, that will download the database dump
That's it, three clicks after logging in.
There's nothing really specific to concrete5 you'd need to consider to take this backup, it's pretty much the steps for any data driven website.
Just one little note - the home file zip file that is downloaded contains all the files in your cPanel account, not just your website files, so it'll include things like email files as well.
So if you do need to restore a site, you just need to unzip it first, to extract just the files within the public_html folder. Typically you just recompress the contents of the public_html folder and upload that, to unzip it on the server. (I might be making this sound complicated, but it's really obvious when you look in the zip)
For the purpose of doing a site backup, you should ignore the 'Full Backup' option in cPanel's Backup section - that's more for migrating cPanel accounts.
The above backup steps are also the same if you wanted to move a site elsewhere.
If there are different ways to do it for different database and platforms, why not just create some (free) add-ons that perform backups for the different environments. I don't think it needs to all be in the one add-on, but surely it could be and simply get greyed out (or not-displayed ??) if the option isn't appropriate after it is installed and does a check of the environment on which it's sitting.
Anyway, I will look into some other manual processes. I appreciate that there is the $40 add-on and if I have to go down that route I guess I will...but I simply don't think I should have to. Thanks again everyone.
I don't test against github-versions of c5 because of reasons...
it's a one-file mysql admin tool. no install, no command line, no root, no nothing.
you can export & import as well.
Author: "Introducing instant website generator!"
PRB Reviewer: "Uhm, it seems somethings wrong, when I click the generate button, all I get is a message saying 'This has not been implemented yet'..."
Author: "SOMEDAY IT WILL BE!"
PRB Reviewer: "....well someday you can resubmit your addon when it actually does something."
Author: "But I got my wordpress version approved in their marketplace! And it does nothing..."
PRB Reviewer (checks if its April 1st, then deletes submission)