Delivery Hint: Tools
We need to cover off the comon tools here. In particular Azure Data Studio (including Jupyter notebooks and markdown code).
Note on T-SQL Coding
The examples in this course and lab do not follow best practice for laying out T-SQL code. In particular, they lowercase keywords, they miss out the AS keyword, and they miss out trailing semicolons.
Transact-SQL Syntax Conventions (Transact-SQL) - SQL Server | Microsoft Learn
The Basics of Good T-SQL Coding Style - Simple Talk (red-gate.com)
My Samples
https://tinyurl.com/cbmctsamples
Learning Path
Module: Prepare to maintain SQL databases on Azure
Big data architectures - Azure Architecture Center | Microsoft Docs
Eight Azure SQL configurations you may have missed - Simple Talk (red-gate.com)
Module: Deploy IaaS solutions with Azure SQL
Module: Evaluate strategies for migrating to Azure SQL
ALTER DATABASE compatibility level (Transact-SQL) - SQL Server | Microsoft Learn
https://www.nutanix.com/theforecastbynutanix/technology/creating-a-cloud-migration-strategy (has a nice discussion of the 7 Rs)
Module: Migrate SQL workloads to Azure Managed Instances
Replication in MI?
Transactional replication - Azure SQL Managed Instance | Microsoft Learn
Module: Configure database authentication and authorization
Lab: Enable Microsoft Defender for SQL and Data classification
The D4C pages change, and change often. This exercise will probably have to be an instructor-led lab, possibly preceded by the instructor frantically clicking around to find out where things have moved. :-)
Additionally, if we have only just activated the D4C trial then the recommendations will not have yet shown. Maybe come back to this section tomorrow?
Module: Describe Performance Monitoring
https://www.sentryone.com/blog/allenwhite/sql-server-performance-counters-to-monitor
https://www.brentozar.com/archive/2006/12/dba-101-using-perfmon-for-sql-performance-tuning/
Module: Explore query performance optimization
Ten Common SQL Programming Mistakes - Simple Talk (red-gate.com)
Data Conversion in SQL Server - Simple Talk (red-gate.com)
Module: Automate deployment of database resources
Most of the templates in the quickstart repository are JSON files but there are Bicep files there.
https://github.com/Azure/azure-quickstart-templates
Lab: Create a CPU status alert for a SQL Server
The module discusses SQL Agent and Maintenance Plans; the lab uses Azure Monitor. Go figure.
Module: Manage Azure PaaS tasks using automation
At the moment the portal has no support for creating any Elastic Job components. Creating jobs, groups, credentails, etc is by PowerShell or T-SQL.
Elastic Database Jobs (preview) - Azure SQL Database | Microsoft Docs
Lab: Backup to URL
Additional code, illustrating access policy (the recommended method to access storage accounts using static keys).
az storage account create --name <storage-account-name> --resource-group DP-300-Lab02 --kind StorageV2 -l <region>
az storage account keys list --resource-group DP-300-Lab02 -n <storage-account-name>
az storage container create --name backups --account-name <storage-account-name> --account-key "<account-key>" --fail-on-exist
az storage container list --account-name <storage-account-name> --account-key "<account-key>"
az storage container policy create --name sqlbackuppolicy --container-name backups --account-key "<account-key>" --account-name <storage-account-name> --permissions "rwdl" --expiry "2022-10-14"
az storage container generate-sas --name "backups" --account-name <storage-account-name> --policy-name sqlbackuppolicy --account-key "<account-key>" -o tsv
Note on Chapter Numbers
The July 2022 update of the course missed out the Intro module, so all of the chapters are numbered one less than they should be. For example, Module 1 Intro to Azure database admin is called Module 0.
Microsoft Learn sort-of eliminated the issue by removing all numbering completely! Chapters and labs are now identified by name only.