Do they have any difference ?

This post seems to have the answer : http://stackoverflow.com/questions/7736395/mysql-configuration-when-to-use-hyphen-and-when-to-use-underscore

No.

It’s just one of those things that happen when a team of people design a product. Different conventions get used leading to inconsistency.