Skip to main content

SQL Azure Geo Replication

Hi
Today i will publish a post of a friend, Yitzchak Wahanon - @YitzWahanon

He wrote this post about Premium Tier, but meanwhile we have non readable replica in Standard Tier too.
Its all of the same but the main change is - that its not readable. Only MSFT will decide if it will be available for us.

This Post include lots of images, its important to understand the Process.

Creation

Already have 1 Server, so need to start by creating the database.
Create a new database
Needs to be Premium Edition:



 Create a new server in a different Geo location.

Within the Source database, Click on Geo_Replication: - Click on “Add Replica” at the bottom


Choose Server - obviously in a different location to the source:




 Accept to pay lots of money:



Progress and steps are reported at the bottom of the screen:


 If you connect to the secondary server then you can see that the database is being copied


 Go back to the source and it will show that the geo-replication is active



Now configure IP access to the new server.


Testing

Insert a record in the Source and see it almost immediately replicated to the Copy


 Try Inserting into the Copy



 Create another server in another geo location and another replica



In the SQL Databases you now have 


 Try changing the scale of a replica


 Try changing the scale of the master:


Stop the replica on the master































































Note the Geo-Replication screen takes time to update.

After you stop geo-replication the Copy database still exists, just marked with “None” in the Replication column. The database is also read/write now





















Comments

Popular posts from this blog

How to restore deleted Azure Synapse dedicated SQL pool

  Existing dedicated pool can be easily restored from Azure portal or PowerShell command, but for now deleted pool could be restored from PowerShell only! Example: # Connect to Azure with system-assigned managed identity $AzureContext = (Connect-AzAccount -Identity).context # set and store context $AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext # $AzureContext = Set-AzContext -SubscriptionName $SubscriptionName -DefaultProfile $AzureContext $SubscriptionName="Databases" $ResourceGroupName="stg-rg-we" $ServerName="stg-synapse-we"   $DatabaseName="sql_we_2023_11_07_13_42" $NewDatabaseName="sql_dp_we_deleted" ######################################## $token = (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token $SubscriptionId = "ce088f9e-1111111a3914b" $DedicatedPoolEndPoint = "stg-synapse-we.sql.azuresynapse.net" $DedicatedPoolName = $DatabaseNam...

The journey to the Lakehouse

A long time has passed since the last post, we have gone through a long and tedious journey to adapt what Azure offers us, to our needs. Our needs were simple, the Current Datawarehouse (SQL Server on VM inazure) served the BI. ML teams worked on GCP, we want to let both teams to work on Azure in a platform that will have the ability to scale and will not fail every 2 days. We checked: Snowflake on azure Synapse analytics GCP We decided to go for the full Azure product for the reasons: Migration time support costs Synapse as a platform contains many components, and the challenge was to find what fits  us as an organization and as a group. The knowledge of the people and their abilities influenced the plans. Here's what we planned and what we did: We start to put everything in the Data Lake in parquet or delta format, build on top of Azure ADLS gen 2. We had to move some data to T-SQL compatible platform, so this involves setting up a dedicated Synapse pool , which is a fully man...

Configuring secondary database in Azure SQL DB - Bug found

Hi All Last week we had an issue with a secondary DB in geo replication and fail over group. To make the long story short we had to delete the secondary and recreate a secondary from scratch . And now let me tell you the story, we build a DB in P6 tier - very high, expensive and highly available. Then we add a geo replication copy via the platform, like it shows here. This is take from MSFT documentation: https://docs.microsoft.com/en-us/azure/azure-sql/database/active-geo-replication-overview It is written:  " Both primary and secondary databases are required to have the same service tier. It is also strongly recommended that the secondary database is created with the same backup storage redundancy and compute size (DTUs or vCores) as the primary. If the primary database is experiencing a heavy write workload, a secondary with lower compute size may not be able to keep up with it. That will cause redo lag on the secondary, and potential unavailability of the secondary. To mit...