• subscribe
February 10, 2010 12:00 AM

SQL Server Comparison and Synchronization Tools

Manage the migration of database objects, code, and data
SQL Server Pro
InstantDoc ID #103463

Change is integral to modern business. Managing the migration of database objects, code, and data from development to staging and then from staging to production environments can be a tall order that consumes a lot of time, energy, and effort. Given how painful change management can be, a market has developed to provide tools and solutions that make detection and synchronization of change easier to tackle.

Several solutions are available to provide differencing and synchronization of SQL Server objects, code, and data. In this article, I compare Red Gate Software’s SQL Compare 8.1 and SQL Data Compare 8.1, The Australian Software Company’s SQL Delta 5.0, and ApexSQL's ApexSQL Comparison Studio 2008. Additional comparison and synchronization solutions not discussed here include Quest Software’s Toad for SQL Server and Idera’s SQL comparison toolset 1.2.

I truly enjoyed evaluating the solutions from Red Gate, The Australian Software Company, and ApexSQL. Pitting these solutions against one another was a bit like test driving different Lamborghini models to determine which one I liked best. All three solutions have definite strengths, with no real flaws or weaknesses to speak of. Which solution is best is purely subjective and depends on your business needs and preferences.

Putting the Solutions Through the Paces
To put these tools to the test, I created a copy of one of my existing databases and made some deliberate changes to structure, code, indexes, and data. Then I turned each of the tools loose on a copy of the modified database and the original to see how well each would do in terms of discovering differences, letting me slice and dice those differences, and, of course, how each of them fared in terms of managing synchronization of those differences. I was also concerned about accuracy—the ability of each solution to catch the changes I’d made. I was happy to see that all three solutions nailed that requirement right out of the gate. They all also fared well on the other key criteria I was looking at, which you can see in Table 1.

SQL Compare 8.1 and SQL Data Compare 8.1
For many people, especially developers, Red Gate is almost synonymous with database comparison and synchronization. The company is considered the de facto leader within this space. I’ve been using SQL Compare and SQL Data Compare for over five years, so I enjoyed putting Red Gate’s solutions to the test from a competitive standpoint—not only to see how they stacked up against other offerings, but also to make sure I haven’t been missing something significant that another solution offers.

The way SQL Compare and SQL Data Compare both save comparison details as a project is a big time saver and makes it easy to save connection details and comparison preferences for easy reuse in databases that are subject to frequent change and modification. SQL Compare and SQL Data Compare both also benefit from an intuitive UI that’s easy to interact with. (Figure 1 shows SQL Compare’s UI.) In addition, both products provide a great approach to synchronizing changes in the sense that they let you either generate a script to implement the changes or just run that script directly against the target database (or both). I also love that both SQL Compare and SQL Data Compare provide the option to recompare databases after synchronizing or pushing changes—I use this sanity feature frequently, to make sure my changes went as planned and to ensure that I didn’t miss something.

SQL Compare is probably the quickest of all the tools I evaluated. Although the other solutions weren’t far behind, I really noticed in a few cases just how fast SQL Compare is. SQL Data Compare seemed to be about as fast as the other data-comparison solutions I evaluated; I didn’t notice any big differences during comparisons.

Overall, SQL Compare and SQL Data Compare both work as advertised; they are solid, robust, cost-effective tools. Both applications have well-polished UIs that let you quickly slice and dice differences to easily evaluate and isolate changes from one database to another. In addition to working with SQL Server databases, SQL Compare and SQL Data Compare can both work with SQL Server backups, which expands the tools’ change auditing and granular data recovery abilities in case of a disaster.

Another strength that both tools offer (and that often goes overlooked) is the Pro versions’ support for command-line interactions. Command-line capabilities let you create scripts or batch files that business users can use to push metadata (e.g., pricing information for products that are going on sale) from a test or quality assurance server out to production servers without requiring DBA interaction. All DBAs need to do is set up the types of data changes allowed or targeted, then set up scripts for business users or QA folks to run when the need arises (and after data has been validated). In addition to highlighting how versatile these tools can be in the war on herding data, the benefits of this feature alone can easily pay for the cost of SQL Data Compare.

The only drawback I noticed with SQL Compare and SQL Data Compare is that they’re two separate tools. Ideally, I wish the two tools were combined into a single application. Having them both be part of the same application would make sense, as in SQL Delta.

SQL Compare 8.1 and SQL Data Compare 8.1
PROS: Cost-effective, fast, and intelligently designed UI; these tools boost productivity and save time and effort
CONS: Two separate applications for object comparison and data comparison; Red Gate’s SQL Comparison Bundle is well-priced but doesn’t include the Pro Tools option
RATING: 5 out of 5
PRICE: $395 each for standard SQL Compare and SQL Data Compare; $595 for Pro versions; Standard versions are included in SQL Comparison Bundle, along with SQL Packager and SQL Dependency Tracker, for $695; Pro versions are included in SQL Toolbelt for $1,995; volume discounts available
RECOMMENDATION: Solid and well-designed tools that will quickly pay for themselves; definitely worth a download and trial. Bundles provide excellent value.
CONTACT: Red Gate Software • 866-997-0379 • www.red-gate.com




ARTICLE TOOLS

Comments
  • 2 years ago
    May 05, 2010

    One negative I saw on ApexSQL was in the User objects. Neither of the other two products made the assumption that the SQL Login already exists on the server, so all user changes were accompanied by the SQL:

    IF NOT EXISTS (SELECT * FROM master.dbo.syslogins WHERE loginname = N'jsmith')
    CREATE LOGIN [jsmith] WITH PASSWORD = 'p@ssw0rd'
    GO

    Which means that the subsequent user mapping will be successful. In the Apex product, this key step was missing, which means if you are synching schemas to a database on another server on which the login doesn't exist, the user mappings will fail (login doesn't exist). The only difference between the Red Gate SQL Compare and SQL Delta is that SQL Delta gives you a random password, whereas SQL Compare gives you a standard P@ssw0rd, which may be a security concern. Personally, I would like to see a product that will properly sync the Login principal along with the password - which can be done by doing the select against the password field and casting to varbinary.

    For me though, having the ability to run comparisons (data specifically) against a backup is a key deciding factor - so for that I would not go with SQL Delta. So far as the UI of Apex goes, they don't have statistics compared by default and it took me a few minutes to find where to do that - the UI is fairly cumbersome, especially if you want to do a quick diff - which the other 2 products are better equipped for. So far Red Gate looks like the choice for me - but I'm still testing.

You must log on before posting a comment.

Are you a new visitor? Register Here
  • SP1?
    I know there is a SP1 for SQL 2008 R2 available....and there is a "feature pack" as well... ...
  • SQL database mirroring
    I have SQL Server 2008 R2 Enterprise 64bit on Windows 2008 R2 Enterprise 64bit.  Each SQL Server has...
  • Dell Compellent Disk Drive
    Does anybody has experience with Dell Compellent Disk Drive? Basically, this system manages all disk...
  • Sql server performance tuning
    I need to find a tool that help me to optimize sql server,queries,improve the performance and solve ...