Equipment: DBMS configured in Exercise 1, Week 24 web application.
(3h) Advanced SQL queries: aggregations (COUNT, SUM, AVG with GROUP BY), simple subqueries, conditional update (UPDATE with WHERE), basic transaction (BEGIN, COMMIT, ROLLBACK).
(3h) Hardening the DBMS: verify the DBMS port is not accessible from outside (local firewall, link with Week 15), test that external connection is refused, document the rules applied.
(3h) Scheduling automated database backup: shell script (link with Week 10) triggering a daily dump, scheduled via cron (link with Week 10), stored in a dedicated directory with 7-day rotation.
(2h) Simulated corruption scenario: the instructor drops a table from the database, the web application displays an error — the trainee identifies the cause, restores from the most recent backup.
(2h) Documenting the full deployed architecture (web + database): diagram, accounts, rights, backup policy.
Expected backup script: calling the DBMS dump tool with connection credentials, redirecting output to a timestamped file, cleaning up files older than 7 days — same structure as the Week 10 backup script applied here to SQL data.
◆ SUMMARY SHEET — WEEK 25 SELF-ASSESSMENT
1. I can explain the relational model (tables, primary keys, foreign keys).
2. I can create a database and tables in SQL.
3. I can run SELECT queries with filter, sort and join.
4. I can create a DBMS user with limited rights.
5. I can back up and restore a database.
6. I can restrict DBMS access via a local firewall.
7. I can schedule automated database backups via cron.
8. I can connect a web application to its database.