簡體   English   中英

如何在C ++中的mysql_init期間解決mysql錯誤“內存不足”?

[英]How to resolve the mysql error “insufficient memory” during mysql_init in c++?

我在Ubuntu 12.04上新部署服務器程序“ MyServer”時遇到問題。 該程序在第一台機器上運行良好

但是在新機器上,MyServer程序在mysql_init()期間返回異常:“ 內存不足:無法為mysql_init()創建處理程序

但是,這兩台機器都具有2Go RAM,並且MySQL似乎安裝得很好(我們可以從mysql客戶端運行請求),並且具有相同的my.cnf

這些行中出現此錯誤:

sql::Driver * driver = get_driver_instance();

if(driver)
{
    // Lets try to connect.
    std::stringstream completeHost;
    completeHost << "tcp://"
                << (configuration->getSocket()->getHost())
                << ":"
                << (configuration->getSocket()->getPort());

    ////// **It throws this exception below** : //////
    sql::Connection * connection = driver->connect(completeHost.str(),
                                                   configuration->getUser(),
                                                   configuration->getPassword());
}

並且連接參數正確,因為這與mysql客戶端使用的相同。

怎么了 ? 非常感謝 !

我剛遇到相同的問題,可能已經找到解決方法。 我們也有兩台機器,一台運行我們的軟件,另一台拋出相同的消息Insufficient memory: can not create handler for mysql_init()

一段時間后,我們注意到第二台計算機進行了一些軟件包更新。 libmysqlclient18是這些軟件包之一。

一旦我將我的libmysqlclient18從5.5.38降級到5.5.22(與工作版本相同的版本),它就又開始工作了!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM