Do you backup your Salesforce data?

No matter where you store your data, it is always good practice to maintain backups. After all, it is your data and you need to be responsible for it, although we trust 3rd parties to keep it safe and backed up for us too.

When it comes to Salesforce, are you maintaining backups? If so, how? Please comment and enlighten the community on some good options you’ve deployed. Some that spring to mind for me are:

  • Weekly Data Export – Inside Salesforce, Enterprise and Unlimited Edition customers (for a fee, Professional Edition can do this) can request a weekly export of their data. The result is a ZIP of CSV files containing the raw data for each Salesforce object.
  • Custom Script – Write custom code to access Salesforce via the API and grab all the data into your own database. Mike Simonds has some scripts to help get you started if you use PHP.
  • AppExchange Application – Use an AppExchange application to do the dirty work to automate this process. Visit the AppExchange to read about the various solutions.
    • Sesame Software – I find this tool very easy to use and can get your Salesforce data into Oracle, MySQL, SQL Server, etc. in a hurry.
    • CRM Fusion – They have a feature to backup your data directly into MS Access.
    • Other Data Loading/Moving Tool – Pervasive, Informatica, Bluewolf, Apatar and others have solutions to move data from place to place with a connector to Salesforce built in.
  • Do Nothing – Let Salesforce take care of it. They have a proven track record of keeping your data from disaster.
  • Something else?

I wish I personally had a better answer, but I am currently using the “Do Nothing” approach and occasionally make backups to MS Access using Demand Tools “just in case”.

How about you? Experiences, recommendations and general thoughts are welcome in the comments.

27 Comments

  1. Pete 'Fifedog' Fife Said,

    April 28, 2008 @ 4:50 pm

    Well I’m in the same boat. I trust Salesforce’s multi-million dollar investments to keep our data safe from natural disaster. However natural disasters don’t include me having a brain fart.

    Therefore anytime I do a massive change to data I hit the weekly export. Or maybe at the end of quarter maybe a good idea.

  2. Rhonda Ross Said,

    April 28, 2008 @ 6:54 pm

    I’ve use the weekly export and used to do it religiously every week — until the volume of data became too time-consuming for this method. Clicking each file link to save locally was taking me way too long. So now I do it monthly now. There have been several times that I did need to actually go back to some data from the backup — to undue some unintended opportunity ownership changes after rolling out territory management (despite all of our sandbox tests), and sometimes just to look up how some data was at a historical point in time. The “do nothing” option only protects you from the natural disasters.

  3. Bryan B. Said,

    April 28, 2008 @ 8:04 pm

    I use the weekly backup along with hoping that nothing ever goes wrong. Having been reminded that a backup is only as good as the ability to restore it, I tried to restore from the weekly backup — and realized it isn’t easy. Following that, I tried the trial version of DemandTools’ export to Access option, which was pretty slick and surprisingly small.

    On a side note, it seems that Salesforce has changed some of the policies on the Data Export function. It used to be that one only had 3 days to export the zipped data file. That no longer seems to be the case.

  4. R_LHR Said,

    April 29, 2008 @ 4:13 am

    I used to use various shades of these methods. Salesforce takes care of the heavy disaster recovery for you and that’s wonderful. But they can’t guard you against your users’ tampering or against accidental user errors. You will find Salesforce.com VERY unsympathetic in these instances.

    A method of backup we tried was to write a polling application that called the Salesforce.com API every few minutes to ask for changes to each object’s data, then post these changes to a local MySQL database.

    This is an ok way to do things as it will even retain the rows you’ve deleted from Salesforce.com if you configure it to.

    In the end, this became too much of a bother for developers to support and maintain, so I subscribed to a service that already sells this type of application and supplies technical support for it.

    This is lovely because I can point reporting tools at this data repository to get around the limitations of reporting features in Salesforce, but it comes with yet another annual pricetag. It’s one of those “hidden costs” that Salesforce.com deny exist among its users.

    There are at least two Salesforce.com partner vendors selling these solutions. You can decide which one you’d rather buy from based on a number of factors (price, offering, viability of the underlying company, ease of use, etc). I think the big two companies have similar pricing. I haven’t checked to see if there were others selling something similar.

  5. Chris Said,

    April 29, 2008 @ 8:16 am

    I trust Salesforce’s investments in data security too, but that they only protect against Salesforce corrupting or losing data. If you corrupt or lose your own data, that’s a different story. Well-meaning (and ill-meaning) users can mess up data in all kinds of creative ways. Pete, you summed it up beautifully: “…natural disasters don’t include me having a brain fart.”

    I work for Bluewolf and we’re big fans of our Replicator product on the AppExchange . You can easily pop all or some of your data (certain objects, deltas since the last dump, or other criteria you set) into Oracle, SQL Server, Sybase, or mySQL databases.

    But unlike the weekly export, you can run it every day, and set it to run automatically. The “set it and forget it” feature has bailed out many of our customers and saved them some serious cash and heartaches from dealing with Salesforce to roll back their data (which they will do, but not on the cheap).

  6. Bill Emerson Said,

    April 29, 2008 @ 6:06 pm

    Over 300 customers (www.forceamp.com/clients.htm) use DBAmp to backup their salesforce data to SQL Server.

  7. Chris 2 Said,

    May 1, 2008 @ 7:45 pm

    This is the “poor man’s script”, but it works for me – I have an Outlook reminder that pops up once every 2 weeks to remind me to back up my data.

    Disclaimer: People will mock you for living your life through Outlook.

  8. Rhonda Ross Said,

    May 2, 2008 @ 11:12 pm

    Good news!

    Just learned that in Summer ’08 you will be able to schedule backups to run automatically at weekly or monthly intervals, at the time of day of your choice. As in previous releases, the minimum time interval between backups will be six days.

    To schedule export files for backup, you will go to Setup ➤ Data Management ➤ Data Export and click Schedule Export.

  9. Tomasz O Said,

    May 19, 2008 @ 2:29 am

    With Summer 08 release …. weekly export can be now scheduled!

    ===================================
    Scheduled Data Export

    Data Export allows you to create backup files of your data. In previous releases, you could manually initiate the backup process once per week. In Summer ’08 you can now schedule backups to run automatically at weekly or monthly intervals, at the time of day of your choice. As in previous releases, the minimum time interval between backups is six days.

    To schedule export files for backup, go to Setup ? Data Management ? Data Export and click Schedule Export.

    If Data Export is not enabled for your organization, contact salesforce.com.

  10. Cloud(s), Hype, and Freedom - BuzzYA! Said,

    October 14, 2008 @ 6:45 am

    […] your data out of a service like salesforce can be a ‘hidden cost’ of an apparently free service, and even with a relatively standards-based service like gmail you have no freedom to make changes […]

  11. Brian Kessler Said,

    October 14, 2009 @ 6:29 am

    Currently I am aiding my client (a small, start-up business) in seeking a backup solution; It seems most backup solutions are marketed towards wealthy enterprises.

    It seems that there are numerous solutions available to us with diverse costs to export data for backup. However, as Bryan B. Said observed “a backup is only as good as the ability to restore it”.

    After a discussion with a rep from DBAmp, I’m under the impression that SalesForce creates a problem when it is time to restore, as every object you import will be assigned a new unique ID, so all the foreign keys then need to be adjusted accordingly. And, so far as he knew, no existing solution would do that automatically: it would all need to be done manually with SQL:

    1. Use SQL to create a correspondence table between the old IDs in the backup and the new IDs in SalesForce.
    2. Use SQL to update all foreign key references to that object within the local (backup) database.

    To be honest, I didn’t even know this could be done with SQL. Can anyone tell me how?

  12. Rhonda Ross Said,

    October 14, 2009 @ 4:19 pm

    I believe that Dream Factory’s product, Monarch, may address the foreign key issue, but I am not sure.

    Here’s a link to their AppExchange listing:
    http://sites.force.com/appexchange/listingDetail?listingId=a0N300000016cejEAA

    For small data sets, I’ve handled the foreign key issue with Excel and vlookups. Once you get your templates set up, it’s not that bad — in most cases. For fields some as Account Parent IDs where the order that the records are loaded in matter, and objects such as campaign members that have relationships to multiple objects are a royal pain-in-the-butt. Data validation rules can also cause older records to fail that got created prior to current business rules going into effect.

  13. Brian Kessler Said,

    October 15, 2009 @ 12:33 am

    I spoke with a rep at DreamFactory. Our discussion didn’t get as far as restore because their product requires an Enterprise environment and we only have a Professional environment.

    Unfortunately (or, rather hopefully), our data sets won’t stay small, so Excel and vlookup probably won’t be a practical solution, though if you could detail how using vlookup might help, it would be appreciated. However, beyond practicality, I would still have concerns about human error.

  14. Cloud Data Backups | Lexnet Said,

    September 8, 2010 @ 8:29 am

    […] you can read here, there are also some options for scripting backups or using third party backup […]

  15. shiva Said,

    February 14, 2011 @ 3:28 am

    I also had the same issue with the backup of salesforce data as we don’t use MS Sql.So i came across this brilliant app on AppExchange which allows users to schedule the backup between full and incremental, so we are saving the most important information more often, and it lowered our down time, since we are not backing everything up at once.Also all of the information is stored into your system, or any other logical device, so mobility and portability of data is maintained.The GUI is also very intuitive.
    To be fair, I didn’t even know Backup/Restore could be done so easily.

  16. Scott Hemmeter Said,

    February 14, 2011 @ 8:44 am

    shiva, what is that app?

  17. shiva Said,

    February 15, 2011 @ 10:41 pm

    Scott i am talking about Avepoint’s DocAve for Salesforce.

  18. James Sullivan Said,

    February 23, 2011 @ 10:17 pm

    We just released DataTrailer which does salesforce.com data backup to a different cloud so it’s available but you don’t have to manage the data. The site: http://www.datatrailer.com

  19. Pepijn Said,

    March 30, 2011 @ 7:04 am

    You all talk about backup but the hardest part is restore. When you lose for example 200 accounts it will take a lot of effort to put them back and link them to the related data again.
    This because SFDC uses salesforceId’s. So when you lose the account you can use your backup to upload it again but it will have a different salesforce id so the related dat will not automatically be linked to it.

  20. Ted Husted Said,

    May 9, 2011 @ 6:02 am

    For a full restore, one solution might be to use the original ID as an External ID, and set the relationships that way. Once it’s all hooked up, drop the obsolete IDs.

    I don’t know, but it may also be possible to set the SFDC ID on create. I know if you ask, you can get permission to the set the created data (like when importing data from another system). Has anyone ever asked SFDC about restoring data from a weekly backup.

  21. Sam Said,

    May 9, 2011 @ 10:00 am

    I agree with Pepijn Said on the importance of finding an efficient way to *restore* from a backup. I’ve got weekly backups going back 18 months, but if we had a user accidentally delete a lot of records or a sync with an external system update a bunch of records erroneously, we’d be offline for quite a while sorting out how to restore the lost/corrupted data from the csv files in the weekly backup. And ending up with all new IDs would be a nightmare as it would cascade to external systems we sync with. Not a good feeling.

    Given the standard format of the backup files, has no one written a script or app to take the weekly backups produced by SFDC itself and restore from it? Would love to find it if there is one. I realize I can buy an expensive app to do both backups and restore, but it seems like there should be a way to do a full restore from an SFDC backup. If there isn’t, doesn’t that mean that SFDC’s backup functionality is basically worthless?

  22. Sam Said,

    May 9, 2011 @ 10:00 am

    Should have said… “If there isn’t, doesn’t that mean that SFDC’s backup functionality is basically worthless FROM A BUSINESS CONTINUITY PERSPECTIVE?”

  23. Murray Said,

    September 5, 2011 @ 1:19 pm

    As an alternative to the manual procedures outline above, you might try CloudAlly. We offer the only automated cloud-to-cloud backup service that provides a centralized archive of Salesforce, Chatter, Google Apps and more, enabling you to view, export, restore or even migrate your data whenever needed. You can sign up for a 15-day free trial at https://www.cloudally.com/ and start backing up your Salesforce and Chatter data today.

  24. Dan Said,

    October 24, 2011 @ 1:45 am

    Hi,

    You can try https://www.ownbackup.com . They have backup for salesforce, including “time machine” where you can jump back in time and see the snapshot of the data. And of course download it as CSV.

  25. PMReddy Said,

    February 18, 2012 @ 11:06 pm

    Can any of one you tell me how to get delta data alone from salesforce to informatica?

  26. Robert Said,

    March 19, 2013 @ 1:28 pm

    I use App on the Appexchange called Riptide Reflection

  27. John Said,

    May 27, 2013 @ 5:46 am

    I use http://www.wingmandata.com free Salesforce.com backup service to backup my salesforce org data at any time. It can backup any number of objects and it also allows you to backup notes and attachments so give it a try

RSS feed for comments on this post