or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

Files

docs

common-models.mdindex.mdmariadb-single-server.mdmysql-flexible-servers.mdmysql-single-server.mdpostgresql-flexible-servers.mdpostgresql-single-server.md

index.mddocs/

0

# Azure RDBMS Management

1

2

Microsoft Azure RDBMS Management Client Library for Python provides comprehensive management capabilities for Azure's relational database services. This package enables programmatic control over MySQL, MariaDB, and PostgreSQL databases on Azure, supporting both traditional single server deployments and modern flexible server architectures with enhanced capabilities.

3

4

## Package Information

5

6

- **Package Name**: azure-mgmt-rdbms

7

- **Language**: Python

8

- **Installation**: `pip install azure-mgmt-rdbms`

9

10

## Core Imports

11

12

```python

13

from azure.mgmt.rdbms.mysql import MySQLManagementClient

14

from azure.mgmt.rdbms.postgresql import PostgreSQLManagementClient

15

from azure.mgmt.rdbms.mariadb import MariaDBManagementClient

16

from azure.mgmt.rdbms.mysql_flexibleservers import MySQLManagementClient as MySQLFlexibleClient

17

from azure.mgmt.rdbms.postgresql_flexibleservers import PostgreSQLManagementClient as PostgreSQLFlexibleClient

18

```

19

20

For async operations:

21

```python

22

from azure.mgmt.rdbms.mysql.aio import MySQLManagementClient as AsyncMySQLClient

23

from azure.mgmt.rdbms.postgresql.aio import PostgreSQLManagementClient as AsyncPostgreSQLClient

24

from azure.mgmt.rdbms.mariadb.aio import MariaDBManagementClient as AsyncMariaDBClient

25

```

26

27

## Basic Usage

28

29

```python

30

from azure.identity import DefaultAzureCredential

31

from azure.mgmt.rdbms.mysql import MySQLManagementClient

32

33

# Initialize credentials and client

34

credential = DefaultAzureCredential()

35

subscription_id = "your-subscription-id"

36

client = MySQLManagementClient(credential, subscription_id)

37

38

# List all MySQL servers

39

servers = client.servers.list()

40

for server in servers:

41

print(f"Server: {server.name}, Status: {server.user_visible_state}")

42

43

# Get a specific server

44

resource_group = "my-resource-group"

45

server_name = "my-mysql-server"

46

server = client.servers.get(resource_group, server_name)

47

print(f"Server location: {server.location}")

48

print(f"Server version: {server.version}")

49

50

# Create a database

51

database = client.databases.begin_create_or_update(

52

resource_group,

53

server_name,

54

"my-database",

55

{"charset": "utf8", "collation": "utf8_general_ci"}

56

).result()

57

58

# Configure firewall rule

59

firewall_rule = client.firewall_rules.begin_create_or_update(

60

resource_group,

61

server_name,

62

"allow-office",

63

{

64

"start_ip_address": "192.168.1.1",

65

"end_ip_address": "192.168.1.255"

66

}

67

).result()

68

```

69

70

## Architecture

71

72

The package follows Azure SDK patterns with distinct management clients for each database service:

73

74

- **Single Server Services**: Legacy deployment model with MySQL, PostgreSQL, and MariaDB support

75

- **Flexible Server Services**: Modern deployment model with enhanced capabilities (MySQL and PostgreSQL only)

76

- **Management Clients**: Service-specific clients providing operations for server lifecycle, configuration, and monitoring

77

- **Operations Classes**: Grouped functionality for specific resource types (servers, databases, firewall rules, etc.)

78

- **Long Running Operations (LRO)**: Asynchronous operations with polling support for resource-intensive tasks

79

80

Each service provides both synchronous and asynchronous client implementations, with consistent authentication patterns using Azure Identity and comprehensive error handling through Azure Core exceptions.

81

82

## Capabilities

83

84

### MySQL Single Server Management

85

86

Complete management capabilities for MySQL single server deployments including server lifecycle, database operations, security configuration, and performance monitoring with query insights and advisory recommendations.

87

88

```python { .api }

89

class MySQLManagementClient:

90

def __init__(self, credential, subscription_id, base_url="https://management.azure.com", **kwargs): ...

91

92

# Core operations

93

servers: ServersOperations

94

databases: DatabasesOperations

95

firewall_rules: FirewallRulesOperations

96

virtual_network_rules: VirtualNetworkRulesOperations

97

configurations: ConfigurationsOperations

98

server_parameters: ServerParametersOperations

99

log_files: LogFilesOperations

100

replicas: ReplicasOperations

101

102

# Administrative operations

103

server_administrators: ServerAdministratorsOperations

104

recoverable_servers: RecoverableServersOperations

105

server_keys: ServerKeysOperations

106

private_endpoint_connections: PrivateEndpointConnectionsOperations

107

private_link_resources: PrivateLinkResourcesOperations

108

109

# Performance and monitoring

110

query_texts: QueryTextsOperations

111

top_query_statistics: TopQueryStatisticsOperations

112

wait_statistics: WaitStatisticsOperations

113

advisors: AdvisorsOperations

114

recommended_actions: RecommendedActionsOperations

115

location_based_recommended_action_sessions_operation_status: LocationBasedRecommendedActionSessionsOperationStatusOperations

116

location_based_recommended_action_sessions_result: LocationBasedRecommendedActionSessionsResultOperations

117

118

# Capability and availability operations

119

server_based_performance_tier: ServerBasedPerformanceTierOperations

120

location_based_performance_tier: LocationBasedPerformanceTierOperations

121

check_name_availability: CheckNameAvailabilityOperations

122

operations: Operations

123

124

# Security operations

125

server_security_alert_policies: ServerSecurityAlertPoliciesOperations

126

```

127

128

[MySQL Single Server](./mysql-single-server.md)

129

130

### PostgreSQL Single Server Management

131

132

Management capabilities for PostgreSQL single server deployments with core server operations, database management, security configuration, and backup/restore functionality.

133

134

```python { .api }

135

class PostgreSQLManagementClient:

136

def __init__(self, credential, subscription_id, base_url="https://management.azure.com", **kwargs): ...

137

138

# Core operations

139

servers: ServersOperations

140

databases: DatabasesOperations

141

firewall_rules: FirewallRulesOperations

142

virtual_network_rules: VirtualNetworkRulesOperations

143

configurations: ConfigurationsOperations

144

server_parameters: ServerParametersOperations

145

log_files: LogFilesOperations

146

replicas: ReplicasOperations

147

148

# Administrative operations

149

server_administrators: ServerAdministratorsOperations

150

recoverable_servers: RecoverableServersOperations

151

server_keys: ServerKeysOperations

152

private_endpoint_connections: PrivateEndpointConnectionsOperations

153

private_link_resources: PrivateLinkResourcesOperations

154

155

# Capability and availability operations

156

server_based_performance_tier: ServerBasedPerformanceTierOperations

157

location_based_performance_tier: LocationBasedPerformanceTierOperations

158

check_name_availability: CheckNameAvailabilityOperations

159

operations: Operations

160

161

# Security operations

162

server_security_alert_policies: ServerSecurityAlertPoliciesOperations

163

```

164

165

[PostgreSQL Single Server](./postgresql-single-server.md)

166

167

### MariaDB Single Server Management

168

169

Complete management capabilities for MariaDB single server deployments including server lifecycle, database operations, security configuration, and performance monitoring with query insights and advisory recommendations.

170

171

```python { .api }

172

class MariaDBManagementClient:

173

def __init__(self, credential, subscription_id, base_url="https://management.azure.com", **kwargs): ...

174

175

# Core operations

176

servers: ServersOperations

177

databases: DatabasesOperations

178

firewall_rules: FirewallRulesOperations

179

virtual_network_rules: VirtualNetworkRulesOperations

180

configurations: ConfigurationsOperations

181

server_parameters: ServerParametersOperations

182

log_files: LogFilesOperations

183

replicas: ReplicasOperations

184

185

# Administrative operations

186

recoverable_servers: RecoverableServersOperations

187

private_endpoint_connections: PrivateEndpointConnectionsOperations

188

private_link_resources: PrivateLinkResourcesOperations

189

190

# Performance and monitoring

191

query_texts: QueryTextsOperations

192

top_query_statistics: TopQueryStatisticsOperations

193

wait_statistics: WaitStatisticsOperations

194

advisors: AdvisorsOperations

195

recommended_actions: RecommendedActionsOperations

196

location_based_recommended_action_sessions_operation_status: LocationBasedRecommendedActionSessionsOperationStatusOperations

197

location_based_recommended_action_sessions_result: LocationBasedRecommendedActionSessionsResultOperations

198

199

# Capability and availability operations

200

server_based_performance_tier: ServerBasedPerformanceTierOperations

201

location_based_performance_tier: LocationBasedPerformanceTierOperations

202

check_name_availability: CheckNameAvailabilityOperations

203

operations: Operations

204

205

# Security operations

206

server_security_alert_policies: ServerSecurityAlertPoliciesOperations

207

```

208

209

[MariaDB Single Server](./mariadb-single-server.md)

210

211

### MySQL Flexible Servers Management

212

213

Enhanced management capabilities for MySQL flexible server deployments with advanced features including high availability, automated backups, maintenance windows, and private networking.

214

215

```python { .api }

216

class MySQLManagementClient:

217

def __init__(self, credential, subscription_id, base_url="https://management.azure.com", **kwargs): ...

218

219

# Core operations

220

servers: ServersOperations

221

databases: DatabasesOperations

222

firewall_rules: FirewallRulesOperations

223

configurations: ConfigurationsOperations

224

replicas: ReplicasOperations

225

backups: BackupsOperations

226

227

# Capability and networking operations

228

location_based_capabilities: LocationBasedCapabilitiesOperations

229

check_virtual_network_subnet_usage: CheckVirtualNetworkSubnetUsageOperations

230

check_name_availability: CheckNameAvailabilityOperations

231

get_private_dns_zone_suffix: GetPrivateDnsZoneSuffixOperations

232

operations: Operations

233

```

234

235

[MySQL Flexible Servers](./mysql-flexible-servers.md)

236

237

### PostgreSQL Flexible Servers Management

238

239

Modern PostgreSQL deployment management with flexible server architecture providing enhanced scalability, high availability, and advanced networking capabilities.

240

241

```python { .api }

242

class PostgreSQLManagementClient:

243

def __init__(self, credential, subscription_id, base_url="https://management.azure.com", **kwargs): ...

244

245

# Core operations

246

servers: ServersOperations

247

databases: DatabasesOperations

248

firewall_rules: FirewallRulesOperations

249

configurations: ConfigurationsOperations

250

251

# Capability and networking operations

252

location_based_capabilities: LocationBasedCapabilitiesOperations

253

virtual_network_subnet_usage: VirtualNetworkSubnetUsageOperations

254

check_name_availability: CheckNameAvailabilityOperations

255

get_private_dns_zone_suffix: GetPrivateDnsZoneSuffixOperations

256

operations: Operations

257

```

258

259

[PostgreSQL Flexible Servers](./postgresql-flexible-servers.md)

260

261

### Common Models and Types

262

263

Shared data structures, enums, and configuration objects used across all database services for consistent API patterns and type definitions.

264

265

```python { .api }

266

# Common server states

267

class ServerState(str, Enum):

268

READY = "Ready"

269

DROPPING = "Dropping"

270

DISABLED = "Disabled"

271

STARTING = "Starting"

272

STOPPING = "Stopping"

273

STOPPED = "Stopped"

274

UPDATING = "Updating"

275

276

# Common resource properties

277

class Resource:

278

id: str

279

name: str

280

type: str

281

location: str

282

tags: Dict[str, str]

283

```

284

285

[Common Models](./common-models.md)

286

287

## Error Handling

288

289

All operations may raise Azure SDK exceptions:

290

291

```python

292

from azure.core.exceptions import HttpResponseError, ResourceNotFoundError, ClientAuthenticationError

293

294

try:

295

server = client.servers.get(resource_group, server_name)

296

except ResourceNotFoundError:

297

print("Server not found")

298

except ClientAuthenticationError:

299

print("Authentication failed")

300

except HttpResponseError as e:

301

print(f"HTTP error: {e.status_code} - {e.message}")

302

```