|
ApexSQL Knowledgebase Tips and How-to Articles for Apex SQL Tools Using ApexSQL's Snapshot Utility for Synchronizing Remote DBs and more This article discusses how you can use ApexSQL Snapshot Utility to synchronize remote databases. It also discusses other possible uses of the utility. What is a snapshot? A snapshot is a read-only file in a binary format that stores the complete information of a database's schema. It can be used as a data source in ApexSQL applications. In ApexSQL Diff, for example, it can be used in structure comparison. The generated synchronization script can then be applied to a database. Using Snapshots to Synch Remote Databases ApexSQL snapshots are especially useful when dealing with remote databases. A snapshot of a database can be created and easily shared among peers (e.g. through email). The recipient of the snapshot who has ApexSQL Diff can then use it as a data source. The snapshot can be compared with another snapshot or with another database. Upon synchronization, the generated script can be run on another database (remote or otherwise). Using Snapshots for Maintaining Database Versions A snapshot can also be used to "version-control" your database's schema. This can easily be done by capturing a snapshot of the database periodically. These snapshots can then be stored in a source control system--like an ordinary file. Old versions of the database schema can then be used to restore a database to certain point. With ApexSQL Diff for example, you can use a version of the snapshot and compare it with your live database. The generated synchronization script, when run, will synchronize both data source. Can I use the snapshots with ApexSQL's command line interface? Yes. Using ApexSQL Diff's command line, snapshots (as well as databases) can be used as data sources. Note: The command line interface of ApexSQL applications is usually used to automate or schedule procedures that are done in GUI. The ApexSQL Snapshot Utility Before, the only way to create ApexSQL snapshots was through ApexSQL Diff which had the functionality embedded to it. So to take advantage of the full benefits of snapshots, a user would first need to have ApexSQL Diff running on his machine. The ApexSQL Snapshot Utility was created to enable users to create snapshots without ApexSQL Diff. The utility is FREE and can be installed on multiple remote sites. Below are some of its uses (some of which are already mentioned above): 1. To synchronize two or more disconnected databases 2. To spread the changes applied to a development database's schema to number of client–side databases. For example, a client database may not be accessible remotely due to security restrictions 3. To capture and store a remote database schema as part of a database schema change event processing 4. To load a snapshot of a remote database schema into a source control system Creating a snapshot using the Snapshot Utility To create a snapshot, connect to a SQL Server using either Windows or SQL Server authentication, select the database you want to create a snapshot of, and specify the snapshot name and where you want to save it. Creating an ApexSQL snapshot in GUI mode ![]() Creating an ApexSQL Snapshot in CLI mode ![]() ApexSQL Snapshot Utility command line switches ![]() More Information Download ApexSQL Snapshot Utility AUTHOR Irene Sanford LAST REVIEW DATE 10 April 2008 Labels: Apex SQL Diff |
© 2008 Apex SQL Tools All Rights Reserved | 1.919.968.8444 | Contact Us | Terms of Use | Privacy Policy



