Index: programs/mythtv-setup/backendsettings.cpp
===================================================================
--- programs/mythtv-setup/backendsettings.cpp	(revision 17239)
+++ programs/mythtv-setup/backendsettings.cpp	(working copy)
@@ -165,6 +165,18 @@
     return bs;
 }
 
+static GlobalCheckBox *DisableAutomaticBackup()
+{
+    GlobalCheckBox *gc = new GlobalCheckBox("DisableAutomaticBackup");
+    gc->setLabel(QObject::tr("Disable Automatic Database Backup"));
+    gc->setValue(false);
+    gc->setHelpText(QObject::tr("This will prevent Myth from backing up the "
+                                "database before upgrades.  If disabled, "
+                                "you should have your own backup strategy "
+                                "in place."));
+    return gc;
+};
+
 static HostCheckBox *DisableFirewireReset()
 {
     HostCheckBox *hc = new HostCheckBox("DisableFirewireReset");
@@ -721,6 +733,7 @@
     fm->addChild(HDRingbufferSize());
     group2->addChild(fm);
     group2->addChild(MiscStatusScript());
+    group2->addChild(DisableAutomaticBackup());
     group2->addChild(DisableFirewireReset());
     addChild(group2);
 
Index: libs/libmyth/dbutil.cpp
===================================================================
--- libs/libmyth/dbutil.cpp	(revision 17239)
+++ libs/libmyth/dbutil.cpp	(working copy)
@@ -162,6 +162,13 @@
  */
 bool DBUtil::BackupDB(QString &filename)
 {
+    filename = "";
+    if (gContext->GetNumSetting("DisableAutomaticBackup", 0))
+    {
+        VERBOSE(VB_IMPORTANT, "Database backups disabled.  Skipping backup.");
+        return true;
+    }
+
     bool result = false;
     MSqlQuery query(MSqlQuery::InitCon());
 
