Publish to an Azure database server

New Azure integration is available from version 5.3

When installing the editor database and the Web application databases on an Azure server, publish engine will run in another mode. It requires that all databases are installed and configured on the database server to start with, since no databases can be created by the application at a later point of time. The application will have only public access to read and write data, but can not create database links, new databases or attach and detach a database.

Each remote publish definition requires a private set of two target databases. The names are not vital but should be consistent to simplify the definition.

Two databases are assigned as target for the publisher. If the primary one is active at the web application, then the secondary is the new target for the publisher. Last step will swap active database and initialize the web application when the publisher is finished. If not the primary is the active database, it is selected as the new target.

The target databases must be publication databases, not editor databases. The data model is not similar.

Id columns are “Identity specification = Yes” for editor database, but No for publication databases. Thus the publisher can maintain database relations even though only a subset of all data is copied to the publish database.

The remote publish definition has a new section, where the new publish mode is enabled.

The instance name is that of the editor database itself and cannot be changed, is is displayed here as a reminder of where the target database is located. The publish engine can only publish data within the same instance since database links are not available in the limited Azure environment; editor database and primary and secondary databases are always in the same database instance.

Data is copied from editor database to target database using three-part table names database.dbo.table, the active login need permission to read and write all databases involved in the publication process. This may require an Azure managed instance.

A sql server login may be assigned to the publish engine, it is applied to the target database. Access to the editor database is already defined in its site definition, in the server.config file.

During the publish process the assigned new target database is emptied and filled with new data, but is not created as in the regular publish process.

When Azure database is disabled, the publisher runs in regular mode and creates a local database, uploaded with other files to the remote server as before.