Hi @Sam - I want to follow up to you post with some additional information. Well, it's not necessarily additional in the context of what was previously provided as an answer. This information should have been provided to you as the answer and providing this information here.
The primary two docs you should be sourcing are the the following, as they cover the specific capabilities for Azure SQL Database Managed Instance:
Because Managed Instance is essentially a bundled IaaS deployment (via ARM) provided as a PaaS service, it is helpful to understand the connectivity architecture with the VNET/Subnet and UDRs.
And finally, with regard to resource limits, the following document details the current resource limitations for the Managed Instance service and details the process for requesting a quota increase.
To address the specific concerns with regard to CLR and TDE functionality, here is that specific information:
- Functionalities include BULK INSERT/OPENROWSET, CLR, DBCC, distributed transactions, extended events, external libraries, filestream and FileTable, full-text Semantic Search, linked servers, PolyBase, Replication, RESTORE, Service Broker, stored procedures, functions, and triggers.
-
LIMITATION of TDE: You can't execute BACKUP DATABASE ... WITH COPY_ONLY on a database that's encrypted with service-managed Transparent Data Encryption (TDE). Service-managed TDE forces backups to be encrypted with an internal TDE key. The key can't be exported, so you can't restore the backup. Use automatic backups and point-in-time restore, or use customer-managed (BYOK) TDE instead. You also can disable encryption on the database.
Managed Instance CLR Support
A SQL Managed Instance can't access file shares and Windows folders, so the following constraints apply:
Only CREATE ASSEMBLY FROM BINARY is supported. See CREATE ASSEMBLY FROM BINARY.
CREATE ASSEMBLY FROM FILE isn't supported. See CREATE ASSEMBLY FROM FILE.
ALTER ASSEMBLY can't reference files. See ALTER ASSEMBLY.
#Always On Availability Groups