Objective. Students will provision a managed PostgreSQL or SQL Server instance on at least two cloud platforms, configure connection strings, and verify connectivity from a client workstation.
This lesson, its worked examples and its practice questions has not yet been verified by an industry-certified professional or by a certification or approval body. It is a study draft and may contain errors. Do not use it as instructions for work on a job site or on live equipment. Always follow your instructor, your supervising professional, and current official references and regulations.
VoTechWorks program approval and accreditation are still in progress. Credentials are issued only by the certifying bodies named in each program, after their own exams.
A managed relational database service (sometimes called DBaaS, Database-as-a-Service) is a cloud platform offering in which the provider handles hardware provisioning, operating-system patching, storage allocation, automated backups, and high-availability failover. You, the DBA, focus on schema design, query tuning, user management, and connectivity — not on maintaining the underlying server. The three dominant platforms for this lesson are Amazon Web Services (AWS) with RDS, Microsoft Azure with Azure SQL Database, and Google Cloud with Cloud SQL.
Understanding how each platform exposes a managed database is directly tested in the Microsoft DP-300 exam and is a practical requirement for any database administrator working in a modern enterprise.
AWS Relational Database Service (RDS) runs your engine — PostgreSQL, MySQL, SQL Server, and others — inside a Virtual Private Cloud (VPC). Before you provision an instance, you must plan three network objects:
Once the instance reaches the Available state, the console shows an endpoint hostname such as `mydb.c9akciq32.us-east-1.rds.amazonaws.com`. Use that hostname in your connection string, never an IP address, because managed services can change the underlying IP during maintenance.
To connect from a local VM using `psql`:
```
psql -h <endpoint> -U <master_user> -d <dbname> -p 5432
```
Azure SQL Database is a fully managed SQL Server-compatible engine. The General Purpose tier uses a vCore purchasing model and provides a balance of compute and storage suitable for most workloads.
Key setup steps unique to Azure:
1. Logical server: every Azure SQL Database sits inside a logical server (not a VM). The server holds authentication settings and firewall rules.
2. Firewall rules: by default, the logical server blocks all incoming connections. You add rules by IP range in the portal or with `az sql server firewall-rule create`. For the lab, add your workstation's public IP.
3. Azure Active Directory (AAD) admin: you can designate an AAD user or group as an administrator in addition to SQL authentication. This is a best practice because it enables password-free, identity-based access and is an auditable control.
4. Connection string: Azure provides ready-made connection strings for ADO.NET, JDBC, ODBC, and others under the database's Connection strings blade. Always use the FQDN of the logical server, for example `myserver.database.windows.net`.
Azure Data Studio is a cross-platform GUI client maintained by Microsoft. It supports both Azure SQL and PostgreSQL via extensions and is the recommended client for this lab.
Cloud SQL for PostgreSQL is Google's managed offering. Provisioning mirrors AWS RDS conceptually — you choose a machine type, storage, a region, and configure authorized networks (IP allowlisting). The `gcloud` CLI command pattern follows:
```
gcloud sql instances create <name> --database-version=POSTGRES_15 \
--tier=db-f1-micro --region=us-central1
```
The run-book exercise is not just a documentation task — it is a professional skill. A run-book is a numbered, repeatable procedure a colleague can execute without ambiguity. Good run-books include exact commands, expected output, verification steps, and rollback actions. When you peer-review a partner's run-book, check that every step is present, every command is complete, and the expected state after each step is stated.
Across all three platforms, these principles apply:
A successful connection is not enough for a professional standard. After connecting, run a simple query to confirm you are in the right database on the right instance:
```sql
SELECT current_database(), version();
```
Document the output. Your instructor will verify a live connection to each platform and will review your run-book for completeness. Both checks must pass to earn credit for this lab.
Answer each question, then check it. Nothing is recorded; this is your own practice.
A free tech program — complimentary, as our commitment to get America working. Help us build VoTechWorks. Tell us what works, what doesn’t, and what you want to learn.