Qt を 5.5 から 5.6 に更新した後、QSqlDatabase:open は常に true を返します - ホストに到達できない場合や、ユーザー名/パスワード/データベース設定が無意味に設定されている場合でも。
テストコード:
QSqlDatabase* db = new QSqlDatabase(QSqlDatabase::addDatabase("QMYSQL", "TESTCONNECTION"));
db->setHostName(ip);
db->setPort(port);
db->setUserName(user);
db->setPassword(pwd);
db->setDatabaseName(dbName);
db->setConnectOptions("MYSQL_OPT_CONNECT_TIMEOUT=4");
bool ok = db->open();
Qt sql ライブラリを最新の mysql バージョン (5.6.x) に対してコンパイルしました。