Announcement

Collapse
No announcement yet.

Automatic Backup?

Collapse
X
 
  • Filter
  • Time
Clear All
new posts

    Automatic Backup?

    Is there a way to schedule an Automatic Backup of CommitCRM Data Base without having to do it manually everyday myself? Any Ideas?

    Re: Automatic Backup?

    Hi carmen,

    Yes, you can perform external backups of RangerMSP using standard backup tools. You just need to make sure no one is using the system when performing the backup (this is done by the RangerMSP internal backup utility, you can contact us directly for instructions on using this mechanism via an external script).

    You can find more information about backing up the system in this forum thread.

    Sherry

    Comment


      Re: Automatic Backup?

      Is it okay to leave CommitCRM running 24x7 if the external backup handles open files? For example, I have two active backup programs:

      - Backup Exec 10.0d with the Advanced Open File option
      - ShadowProtect Server Ediition (uses VSS)

      CommitCRM uses a file-based database, right, similar to dBASE? So far with dBASE databases (e.g. GoldMine), I haven't had any issues as long as I'm using Backup Exec with the Open File Option. But then again, I haven't had to recover from disasters too often...

      Mark

      Comment


        Re: Automatic Backup?

        Hi mcbsys,

        Thank you for your question. Basically the RangerMSP database (which uses Sybase-Advantage database) is similar to the DBase format (when using the RangerMSP non-SQL version), which means it is a file-based database.

        However, when performing a backup it is required to make sure no one is using the database at the time of the backup.

        To make sure no one is using the application at the time of the backup (including the RangerMSP services - Web interface and RangerMSPServer), you can use a similar mechanism RangerMSP uses in order to stop all activity. When using RangerMSP's internal backup utility, it signals RangerMSP clients to exit by creating a file called RangerMSPStop.ini in folder <Server>\RangerMSP\DBSys\

        You can write a script that copies this file to the folder mentioned above. This will force all running clients and services to exit, then the script or your backup program will backup the data. The script should then delete this file to enable logins.
        you can create the file on your own and then copy it - the file is a simple text file which should be called RangerMSPStop.ini, and should contain a single token:

        [TERMINATE]
        TimeBeforeAutoTerminate=1


        Notes:
        1. After saving the file to the folder wait about 5 minutes until all clients and services are signaled and close.
        2. At the end of each day it is a good practice to manually close RangerMSP client on each PC
        3. Make sure you delete this RangerMSPStop.ini file after the backup is complete or no one will be able to use the system

        I hope this helps.

        Neta

        Comment


          Re: Automatic Backup?

          Thanks Neta. I appreciate the detailed suggestion, but I must admit it seems rather complicated.

          Do I need to re-start services after using this approach?

          We are talking Advantage Local Server 8.1, right?

          I'll do a little more research on this. Hopefully open file/snapshot technology is enough.

          Mark

          Comment


            Re: Automatic Backup?

            I know it sounds complicated, however, after performing the initial setup this actually works really nicely.

            The way it works is that once you delete the file, there is no need to restart the services, they will find out that the file was deleted and will go on working like before after a minute or two. It doesn't matter which Advantage Database version you use in this case, as this is a pure RangerMSP mechanism, on top of the database. This is actually quite a convenient way to do this and I know that many users use this method successfully.

            I hope this information is helpful.

            Neta

            Comment


              Re: Automatic Backup?

              Neta,

              You should roll that .ini creation function into the CommitBackup.exe program via command-line switches. You should not have to write a script to drop the .ini, run the backup, and remove it. Ideally, you should simply be able to run CommitBackup.exe with some command switches via a scheduled task. This would be a nice future enhancement.

              --AJ

              Comment


                Re: Automatic Backup?

                Hi AJ,

                Thanks for the idea, it sounds interesting. Basically using the RangerMSPStop.ini file is just a trick to make sure no one uses the system, while you use any backup tools of your own (which is the recommended backup option).

                Neta

                Comment


                  Re: Automatic Backup?

                  Okay I think I've got the batch files working. We'll see how the backups behave.

                  Here are the scripts in case someone else want to do this. If you want to script the backup itself, just use WinZip in batch mode in between these two. (Check the standard CommitBackup.exe output for which folders to back up, then add others you need, like Docs.)

                  CommitCRM.PreBackup.cmd

                  @echo off
                  REM ================================================== =========================================
                  REM CommitCRM.PreBackup.cmd
                  REM July 8, 2009
                  REM
                  REM Create CommitStop.ini to stop CommitCRM CRM before running backup, then wait five minutes.
                  REM See here.
                  REM
                  REM Parameters:
                  REM %1: Local path to CommitCRM CRM
                  REM
                  REM Dependencies:
                  REM None
                  REM
                  REM Notes:
                  REM Run CommitCRM.PostBackup.cmd after backup to re-enable logons.
                  REM
                  REM ================================================== =========================================

                  if ###%1###==###### goto NoParam
                  goto ParamsFound

                  :NoParam
                  echo.
                  echo Missing path. Enter the local path to the CommitCRM CRM root directory.
                  echo.
                  echo Usage: CommitCRM.PreBackup.cmd "D:\Commit"
                  goto End

                  :ParamsFound

                  if exist "%1\DbSys\CommitStop.ini" del "%1\DbSys\CommitStop.ini"

                  echo [TERMINATE] > "%1\DbSys\CommitStop.ini"
                  echo TimeBeforeAutoTerminate=1 >> "%1\DbSys\CommitStop.ini"

                  timeout /t 300

                  :End
                  CommitCRM.PostBackup.cmd

                  @echo off
                  REM ================================================== =========================================
                  REM CommitCRM.PostBackup.cmd
                  REM July 8, 2009
                  REM
                  REM Delete CommitStop.ini after running backup so users can log on again.
                  REM See here.
                  REM
                  REM Parameters:
                  REM %1: Local path to CommitCRM CRM
                  REM
                  REM Dependencies:
                  REM None
                  REM
                  REM Notes:
                  REM Run CommitCRM.PreBackup.cmd to force users and services to stop.
                  REM After deleting CommitStop.ini, users can log back on and services restart automatically.
                  REM
                  REM ================================================== =========================================

                  if ###%1###==###### goto NoParam
                  goto ParamsFound

                  :NoParam
                  echo.
                  echo Missing path. Enter the local path to the CommitCRM CRM root directory.
                  echo.
                  echo Usage: CommitCRM.PostBackup.cmd "D:\Commit"
                  goto End

                  :ParamsFound

                  if exist "%1\DbSys\CommitStop.ini" del "%1\DbSys\CommitStop.ini"

                  :End

                  Comment


                    Re: Automatic Backup?

                    mcbsys,

                    Nicely done. Thanks for sharing! Will test out soon!

                    Comment

                    Working...
                    X