[id="tutorial"]
= Tutorial

:toc:
:toc-placement: macro
:sectanchors:
:linkattrs:
:icons: font
:source-highlighter: highlight.js
:windows:

toc::[]

This tutorial demonstrates how to use {prodname} to monitor a MySQL database.
As the data in the database changes, you will see the resulting event streams.

In this tutorial you will start the {prodname} services,
run a MySQL database server with a simple example database,
and use {prodname} to monitor the database for changes.

.Prerequisites

* Docker is installed and running.
+
This tutorial uses Docker and the {prodname} Docker images to run the required services.
You should use the latest version of Docker.
For more information, see link:https://docs.docker.com/engine/installation/[the Docker Engine installation documentation].
+
[NOTE]
====
For this tutorial, do not run Docker in a virtual machine (using Docker Machine).
====

ifdef::community[]
[NOTE]
====
This example can also be run using Podman. For more information see link:https://podman.io/[Podman]
====
endif::community[]

include::{partialsdir}/modules/tutorial/con-introduction-debezium.adoc[leveloffset=+1]

include::{partialsdir}/assemblies/tutorial/assembly-starting-services.adoc[leveloffset=+1]

include::{partialsdir}/assemblies/tutorial/assembly-deploying-mysql-connector.adoc[leveloffset=+1]

include::{partialsdir}/assemblies/tutorial/assembly-viewing-change-events.adoc[leveloffset=+1]

include::{partialsdir}/modules/tutorial/proc-cleaning-up.adoc[leveloffset=+1]

include::{partialsdir}/modules/tutorial/con-next-steps.adoc[leveloffset=+1]
