Covered lots of scenario

No need to create database everytime
Better error handling
No database backup to reduce the database copy time