Abstraction is good. It makes your code more portable. You may lose some database-specific functionality, but you gain database independance.
mysql may not go anywhere, but there may be a licencing change which causes you concern
or there might be a corporate change -"why support Oracle on this system and mysql over here? let's just use one database!"
another useful reason is to keep hackers guessing. if you can easily change which database you use every month or two, then it makes it more difficult for anyone trying to break into your system to hunt you down
But, as with most things in life, go with what makes sense for you.