MDB2 is a database abstraction layer. Whether or not you decide to use MDB2 or a similar database abstraction layer depends on your needs. If you need to be able to work on many applications and get your work done quickly, then MDB2 is certainly helpful. If performance is key, then you may find the extra weight of MDB2 to be prohibitive.
One big benefit of using a database abstraction layer like MDB2 is portability. MDB2 allows you to use a single API for working with many different types of databases. So if you decide to move to another database, you will not have to rewrite all your code.
Another benefit is code simplification. If your application involves multiple databases of different flavors or you work on many applications each of which uses a different type of database, you would normally have to learn the APIs for each of the databases you would be working with. Again, MDB2 allows you to work with all these databases using the same API.
The biggest downside of using a database abstraction layer is that the benefits come at a performance cost. Imagine you were planning to travel around Europe and had the choice of bringing an interpreter who could speak all European languages and learning the languages yourself. It would certainly be easier to bring the interpreter, but this would make each conversation you had somewhat slower. The abstraction layer is the interpreter.