2015-06-16 63 views
0

我使用以下代碼連接到MySQL服務器數據庫。無法使用qt 4.8.5和Ubuntu連接到mariadb數據庫服務器12.04

QSqlDatabase db_Server = QSqlDatabase::database("Test"); 

//find mysql driver 
db_Server = QSqlDatabase::addDatabase("QMYSQL","Test"); 
db_Server.setHostName("188.**.***.***"); 
db_Server.setPort(3306); 
db_Server.setDatabaseName("Test"); 
db_Server.setUserName("Test"); 
db_Server.setPassword("*********"); 

bool ret = db_Server.open(); 
if(ret) qDebug() << "Database open" 
else qDebug() << db_Server.lastError().text(); 

最近,他們改變了服務器MariaDB的,我認爲它是與QMYSQL驅動程序兼容並用上面的代碼來訪問數據庫,但我得到了以下錯誤 「無法連接到MySQL服務器' (101)QMYSQL:無法連接「

是否有任何額外的事情,我需要做與mariadb連接到服務器?任何幫助表示讚賞

我已經建立了MySQL插件通過以下方式

#sudo apt-get install libmysqlclient-dev 
#cd $QTDIR/src/plugins/sqdrivers/mysql 
#sudo qmake 「INCLUDEPATH+=usr/include/mysql」 「LIBS+=-L/usr/lib/i386-linux-gnu –lmysqlclient_r」 mysql.pro 
#sudo make 
#sudo make install 

我應該做同樣MariaDB的任何改變?

+0

我假設***是使它匿名,你在實際的代碼中使用正確的IP地址?你是否嘗試在同一主機上使用mysql命令行客戶端? –

+0

@FrankOsterfeld這是數據庫問題,而不是Qt應用程序,如果使用密碼,連接將被拒絕。我曾嘗試連接使用MySQL工作臺,它工作正常,所以我不知道有一個密碼相關的問題。謝謝 – Giz

回答

0

正是有了數據庫,而不是Qt應用程序出了問題,如果使用密碼的連接被拒絕。

相關問題