How can we help you today? How can we help you today?
Eddie D
The problem is due to SQL Server not releasing the xp_sqlbackup.dll file for upgrade. As part of the upgrade process we issue DBCC xp_sqlbackup(FREE) to get SQL Server to release our dll file for upgrade. However SQL Server does not release the file and we have never been able to accurately identify the cause. In some cases, retrying the upgrade process resolves the problem. Another way of loading the new or upgrade dll file is to perform the following: DBCC xp_sqlbackup(FREE) EXEC sp_dropextendedproc sqlbackup EXEC sp_dropextendedproc sqbstatus EXEC sp_dropextendedproc sqbutility EXEC sp_dropextendedproc sqbmemory EXEC sp_dropextendedproc sqbdata EXEC sp_dropextendedproc sqbdir EXEC sp_dropextendedproc sqbtest EXEC sp_dropextendedproc sqbtestcancel EXEC sp_dropextendedproc sqbteststatus Stop the SQL Server Service. Find all previous versions of xp_sqlbackup on your system and remove them including the installation folder. Find the new version of xp_sqlbackup.dll ( a copy can be found in the SQL Backup GUI installation folder) and copy this to the SQL Server instance BINN folder. Start the SQL Server Service. sp_addextendedproc sqlbackup, “xp_sqlbackup.dll†sp_addextendedproc sqbstatus, “xp_sqlbackup.dll†sp_addextendedproc sqbutility, “xp_sqlbackup.dll†sp_addextendedproc sqbmemory, “xp_sqlbackup.dll†sp_addextendedproc sqbdata, “xp_sqlbackup.dll†sp_addextendedproc sqbdir, “xp_sqlbackup.dll†sp_addextendedproc sqbtest, “xp_sqlbackup.dll†sp_addextendedproc sqbtestcancel, “xp_sqlbackup.dll†sp_addextendedproc sqbteststatus, “xp_sqlbackup.dll†Many Thanks Eddie / comments
The problem is due to SQL Server not releasing the xp_sqlbackup.dll file for upgrade. As part of the upgrade process we issue DBCC xp_sqlbackup(FREE) to get SQL Server to release our dll f...
0 votes
Thank you for your post into the forum. When executing a synchronization script created by the SQL Compare (or SQL Data Compare or using the Comparison SDK), it may be desired that some ad-hoc queries be intermixed with the SQL produced by the Red Gate APIs. Because the BlockExecutor class can only run SQL code by converting ExecutionBlocks to SQL code and submitting them to the SQL Server, custom SQL cannot be introduced into the query stream. It is possible, however, to break an ExecutionBlock into individual query batches and running them using the .NET Framework's ADO .NET methods. In the following C# example, first, a connection is made to the server using the connection properties of the second database. Then a transaction is created. The custom SQL query is run first, then each batch of SQL from the ExecutionBlock in order. Finally, the transaction is committed. If any errors occur during the execution of the SQL script, then the error is written to the console and the transaction will be rolled back. ExecutionBlock block = provider.GetMigrationSQL(session, new SelectionDelegate(this.SyncRecord), true); ... System.Data.SqlClient.SqlTransaction trans = null; try { // Make a connection string from the second database connection properties System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection("Data Source="+db2.ConnectionProperties.ServerName+";Initial Catalog="+db2.ConnectionProperties.DatabaseName+";Integrated Security=SSPI"); System.Data.SqlClient.SqlCommand cmd = conn.CreateCommand(); conn.Open(); trans = conn.BeginTransaction("MyTransaction"); //Run batches for (int i = 0; i < block.BatchCount; i++) { Batch b = block.GetBatch(i); if (!b.Marker) { cmd.CommandText = b.Contents; cmd.ExecuteNonQuery(); } } trans.Commit(); } catch (System.Data.SqlClient.SqlException se) { Console.WriteLine("Execute SQL failed: " + se.Message); trans.Rollback(); } I hope the above helps in resolving your issue. Many Thanks Eddie / comments
Thank you for your post into the forum. When executing a synchronization script created by the SQL Compare (or SQL Data Compare or using the Comparison SDK), it may be desired that some ad-hoc quer...
0 votes
Thank you for your reply. I have now submitted the feature request for the SQL Backup Development Team to consider support for HP Polyserve and Neverfail clustering solutions. The reference for this feature request is SC-4291. Many Thanks Eddie / comments
Thank you for your reply. I have now submitted the feature request for the SQL Backup Development Team to consider support for HP Polyserve and Neverfail clustering solutions. The reference for th...
0 votes
Thank you for your post into the forum. Unlike a SQL Cluster, unfortunately SQL Backup does not support SQL Server Database Mirroring. On a SQL Cluster both or all nodes of the cluster have an installation of SQL Backup Server components. The server components is cluster aware so all nodes of the cluster are installed simultaneously and a resource is created within the Cluster Administrator. A cluster applies to the whole SQL Instance not individual databases. A database mirror is configured per database. Both the Principal Server and the Mirror Server have there own independent installations of SQL Backup Server Components. The server components are not aware of the database mirroring. The Witness server will initiate fail over if a problem is detected, so that the mirror database becomes the principal. SQL Backup does not know if fail over has occurred, has no resource is created on the witness server. The same caveats apply to both native SQL Server Backup and Red Gate SQL Backup: 1. While database mirroring is active, you cannot backup or restore the mirror database. The Mirror database is in a NORECOVERY state, so SQL Server prevents backup's of this database. 2. Although you can backup the principal database, you cannot us BACKUP LOG WITH NORECOVERY 3. You cannot restore the principal database. The mirror will correct itself after failover. The only possible workaround for the problem is to create a backup job that perform a backup all databases on each server. Databases in a restoring state will be ignored. Possible SQL Backup syntax maybe as follows: EXECUTE master..sqlbackup '-SQL "BACKUP DATABASES [*] TO DISK = [<path to backup file location>] WITH COMPRESSION = 2, ERASEFILES = 2, COPYTO = [<unc path a network share>], VERIFY" ' Alternatively, you can use the EXCLUDE argument, which will backup all databases except those listed in the EXCLUDE argument. For example, you may just want to backup all user databases: EXECUTE master..sqlbackup '-SQL "BACKUP DATABASES EXCLUDE [master, model, msdb] TO DISK = [<path to backup file location>] WITH COMPRESSION = 2, ERASEFILES = 2, COPYTO = [<unc path a network share>], VERIFY" ' Once fail over occurs, the mirror database becomes the principal and therefore no longer in a restoring state and the database will then be backed up using SQL Backup. Many Thanks Eddie / comments
Thank you for your post into the forum. Unlike a SQL Cluster, unfortunately SQL Backup does not support SQL Server Database Mirroring. On a SQL Cluster both or all nodes of the cluster have an inst...
0 votes