Scheduled jobs
A job reads your own MySQL database on a schedule - read-only, always - and brings the rows into a counter.
A job is a script that brings rows into a counter on a schedule: every hour, every morning, whatever you choose. You describe the job in a sentence; Countdat writes it and dry-runs it before you save.
Jobs read MySQL databases. Other databases and services aren't supported yet.
#Before you start
- A MySQL database Countdat's servers can reach.
- A database user for Countdat. We recommend one with read-only permissions on just the tables it needs - Countdat enforces read-only on its side too.
#Set up a job
- Connect the database. Enter the host, database name, user and password. The password is encrypted and used only by the server - see Secrets & passwords.
- Describe the job. "Every hour, check how close each table's ID column is to its maximum."
- Read the dry run. Countdat writes the job and runs it once without saving anything, so you see the exact rows it would bring in.
- Choose the schedule and save. From then on, each run adds rows marked as coming from this job.
#Read-only, enforced three ways
A job cannot change your database. On every query it runs:
- through a read-only connection,
- inside a read-only session,
- with a time limit.
More in Read-only access.
#How fresh is the data?
As fresh as the last run. Jobs run on a schedule - hourly is typical - so data arrives as rows at each run, not as a continuous feed. Pick a schedule that matches how quickly you need to know.
#Pair it with an alert
Jobs and alerts work well together: the job brings rows in every hour, and the alert tells your notify list when a number crosses a line - or when the job's rows stop arriving.
Updated 2026-10-09