dbasim_
Oracle DBA break-fix lab

Practice the 2 a.m. database outage before it happens for real

dbasim breaks a real Oracle database on your own machine while simulated users keep hammering the app. You find the cause, fix it, and dbasim checks whether the fix actually holds. Hands on the keyboard, not another video course.

Start free 3 scenarios free, no sign-up · Pro scenarios coming soon
How it works

Three steps from ticket to score

  1. Run Oracle Free locally

    One Docker command, pulled straight from Oracle. Connect with SQL*Plus or SQL Developer, whichever you prefer.

  2. Take a ticket dbasim start s01

    dbasim plants the fault in the database and starts a simulated app with many users. You get a ticket and logs, just like a real shift.

  3. Fix it, then dbasim check

    It checks both the outcome and how you got there. Deleting data to make things faster does not count. Pass, and a senior DBA walkthrough explains the fix.

Scenarios

Incidents every DBA meets sooner or later

Each one is solvable with what ships in Oracle Free: v$ views, DBMS_XPLAN and trace.

ScenarioWhat you seeLevelPlanStatus
Order search page is slowORDER_SEARCH customer=4127 … (SLOW)EasyFreePlayable
Month-end report slow after a data migrationMONTH_END report region=1 … (SLOW)EasyFreePlayable
Nightly batch fails every nightORA-01652 in tablespace TEMP_RPTEasyFreePlayable
Payment entry screen hangsORA-30006 / ORA-00054 · enq: TX - row lock contentionMediumProComing soon
CPU spikes after a new app releaseparse count (hard) spikesMediumProComing soon
Long report dies halfway throughORA-01555: snapshot too oldMediumProIn progress
Nobody can connectORA-00257: archiver errorMediumProIn progress
Same query, sometimes fast, sometimes slowbind peeking / plan flipHardProIn progress
Who it's for

You know SQL, but you've never fixed a database that's actually broken

Junior DBAs

An incident lands and you don't know where to start looking. Build up hours without waiting for production to break.

Devs and sysadmins moving into DBA work

No real system to practice on, but you need real stories to tell in interviews.

OCP candidates

You know the theory from the book. Now try it under pressure that feels like the real thing.

FAQ

Before you start

Do I need an Oracle license?

No. dbasim runs on Oracle Database Free, which you download from Oracle yourself under Oracle's free-use terms.

How powerful does my machine need to be?

You need Docker, about 3 GB of free RAM and 10 GB of free disk. On a slower machine you can shrink the scenario data size.

Can I run it against a database at work?

No, and you shouldn't. dbasim creates and drops objects, so it is locked to Oracle Free only.

How much does it cost?

The first 3 scenarios (s01–s03) are free forever, with no sign-up and no card. Pro scenarios are not on sale yet.

When will Pro launch?

No date yet. Watch the project on GitHub to hear when it does. Until then the 3 free scenarios come with everything: hints, grading and the write-ups.

I installed it, but dbasim is "not recognized". Why?

Your Python scripts folder is not on PATH (common on Windows). Run the same commands as python -m dbasim ..., or install with pipx install dbasim, which puts the command on PATH for you.

How do I stop everything when I'm done?

Run dbasim stop (or dbasim reset to clear the scenario), then docker stop dbasim-oracle to give the memory back. Before you shut the computer down, quit Docker Desktop first (right-click the whale icon, Quit): shutting down with it still running is what causes the error below.

Docker Desktop says "An unexpected error occurred" and mentions engine.sock. What now?

Click Quit, then open Docker Desktop again; it normally starts on the second try. Do not choose "Reset to factory defaults": that deletes the Oracle container and you would download it again. If it keeps failing, run dbasim doctor; it tells you which part of the chain is broken.

Found a problem, or want to suggest a scenario?

Open an issue on the project's GitHub Issues.

Get started

Play free now. No sign-up.

The first 3 scenarios come with every feature. Pro scenarios are not on sale yet.

Free

Playable

$0

  • Scenarios s01–s03, forever
  • Hints, grading and senior DBA write-ups
  • No sign-up, no card
See how to install

Pro

Coming soon

Not on sale yet

  • Medium to hard scenarios, such as lock contention and hard parsing
  • New scenarios added over time
Follow on GitHub

Install in 4 steps

  1. Install Docker and Python 3.9 or newer.

  2. Start Oracle Database Free with Docker (the first download is several GB).

  3. Install dbasim with pip, then run dbasim setup once: it asks for the database password and remembers it.

  4. Run dbasim doctor to check the setup, then dbasim start s01.

Full commands and the Windows setup are in the guide on GitHub.