Learn how to interact with different transaction isolation levels in MySQL.
-
Illustrate different isolation levels:
- READ UNCOMMITTED
- READ COMMITED
-
Illustrate how “dirty read” works.
-
Explain your solution using the correct terminology.
-
Be ready to answer questions about transactions and concurrency control.
-
Source code is in GitLab/GitHub 0.5
-
Your project illustrates REPEATABLE READ isolation level 0.5
-
Your project illustrates Non-repeatable read 0.5
-
Your project illustrates Deadlock 0.5
Meeting the basic requirements of Practical Assignment 1 allows for a maximum of 5 points to be earned, and completing additional tasks listed under the heading "Additional points" can yield up to 2 extra points.
You can use any programming language. I suggest you look at my example of the execution of a part of the task, which is described below (MySQL Isolation Level Demo).
This project demonstrates the use of different isolation levels in MySQL, particularly
focusing on the READ UNCOMMITTED
level to show how dirty reads can occur.
- Python 3.9.6
- MySQL Server
mysql-connector-python
packagepython-dotenv
package
- Run script.sql in your database.
- Set environment variables (host, user, password, database).
- Run:
-
pip install -r requirements.txt
- Run read_uncommited_demo.py.