2
我有一個數據庫設置在我的1and1包中,我想在C++應用程序中連接到它。它在PHP中工作得很好。C++/MySQL - 通過主機地址訪問數據庫時'未知的MySQL服務器主機';沒有IP
的問題是,我沒有數據庫的實際IP,我所有的主機地址和登錄信息:
主機名: db12345678.db.1and1.com
用戶名: dbo12345678
密碼:輸入mypassword
我使用MySQL的C++連接器1.1.4。這裏是我的代碼用於測試目的:
#include <Windows.h>
#include <cppconn/driver.h>
#include <cppconn/exception.h>
#include <cppconn/resultset.h>
#include <cppconn/statement.h>
#include <iostream>
#pragma comment(lib,"mysqlcppconn.lib")
int main(int argc,char *argv[])
{
try {
sql::Driver *driver;
sql::Connection *con;
sql::Statement *stmt;
sql::ResultSet *res;
driver = get_driver_instance();
con = driver->connect(sql::SQLString("db12345678.db.1and1.com"),sql::SQLString("dbo12345678"),sql::SQLString("mypassword"));
con->setSchema("test");
}
catch(sql::SQLException &e)
{
std::cout<<"Exception: "<<e.what()<<std::endl;
}
while(true);
return 0;
}
使用的主機地址,我得到了以下的輸出:
Exception: Unknown MySQL server host 'db12345678.db.1and1.com' (0)
我也試過「TCP://db12345678.db.1and1.com」 「tcp://db12345678.db.1and1.com:3306」,「db12345678.db.1and1.com:3306」,錯誤消息不同,但最終結果相同。
我試過ping主機,並通過traceroute來獲取IP,但這並不起作用。
我還能試試嗎?
是你的數據庫的遠程訪問允許? – VMai 2014-09-13 14:03:39
我可以通過PHP在不同的主機上訪問它,所以我假設它是。 – Silverlan 2014-09-13 14:17:37
那麼使用你的PHP主機來獲取MySQL服務器的IP地址呢? – VMai 2014-09-13 14:27:06