locked
Remove Datasync RRS feed

  • Question

  • I used datasync as a backup solution for my Azure db before there was a backup support in Azure but now I would like to remove all datasync tables,sp, triggers, etc.

    Why? Well it seems I must remove data sync due to the bacdac restore on the local db does not work with the datasync triggers.  This is the error:

    Error SQL72014: .Net SqlClient Data Provider: Msg 195, Level 15, State 10, Procedure ACH_insert_trigger, Line 4 'get_new_rowversion' is not a recognized built-in function name.

    Error SQL72014: .Net SqlClient Data Provider: Msg 195, Level 15, State 10, Procedure ACH_insert_trigger, Line 5 'get_new_rowversion' is not a recognized built-in function name.

    (Microsoft.SqlServer.Dac)

    Another db without datasync restores just fine

    How do I delete all the datasync related items? 

    Would this work? Drop the following tables:

    1. schema_info
    2. scope_config
    3. scope_info
    4. *_tracking

    Friday, November 9, 2012 4:11 AM

All replies

  • if you're referring to SQL Azure Data Sync Service:

    remove the database from the Sync group and that should take out all those objects.

    if it doesnt work, download the Data Sync Agent and run the deprovisioning utility.

    if it's Sync Fx:

    used the deprovisioning API

    if you want to do it manually, in Data Sync Service, remove all objects with a DSS prefix, including the UDTs (SSMS->Databases->YourDB->Programmability->Types->User-Defined Table Types)

    see this post on the different objects added by Provisioning: http://jtabadero.wordpress.com/2010/09/02/sync-framework-provisioning

    Friday, November 9, 2012 4:25 AM
  • I built my own datasync app based on Microsoft Synch Framework 2.1 (runtime version v2.0.50727)

    Where is the Sync group located?  I don't recall seeing a sync group

    Does the Data Sync Agent work with my runtime version?

    Friday, November 9, 2012 5:20 AM
  • as i have said, if its Sync Framework, use the Deprovisioning API.

    see: How to: Provision and Deprovision Synchronization Scopes and Templates (SQL Server)

    Friday, November 9, 2012 5:35 AM
  •         private void DesaprovicionarServidor(SqlConnection conexionSql, string esquemaMetadataSyncFramework, string prefijoMetadataSyncFramework )
            {
                SqlSyncScopeDeprovisioning DesaprovicionadorDeAmbito = new SqlSyncScopeDeprovisioning(conexionSql);
                DesaprovicionadorDeAmbito.ObjectSchema = esquemaMetadataSyncFramework;
                DesaprovicionadorDeAmbito.ObjectPrefix = prefijoMetadataSyncFramework;
                DesaprovicionadorDeAmbito.DeprovisionStore();
            }
    Tuesday, November 13, 2012 7:22 PM