работать ли этот код?
https://pastebin.com/v9aRcHbk
а зачем целая БД?
Твоё ТЗ совсем не совпадает с тем что у тебя в коде. В коде ты запрещаешь вообще любой повторный запуск скрипта, а не только параллельный запуск скрипта в двух процессах. А если по теме, то смутно помню, что можно поискать в системе процесс с таким же именем, что бы не запускать аналогичный. Вроде как даже для винды это и сипользуется, в линуксах не знаю сработает или нет.
короче идея такая: 1. На Linux сделать файловый лок, он автоматически отпускается когда завершается процесс 2. На Windows сделать глобальный мьютекс через win32event.CreateMutex. Пример для плбсов https://stackoverflow.com/questions/8799646/preventing-multiple-instances-of-my-application
Обсуждают сегодня