[英]MySQL: “Too many connections” in opencart
我最近安裝了opencart 2.0.3.1。 由於我已經安裝了opencart,因此出現以下錯誤
警告:mysqli :: mysqli()[mysqli.mysqli]:(08004/1040):在第7行的/home/burhanie/public_html/store/system/library/db/mysqli.php中的連接太多
注意:錯誤:無法建立數據庫鏈接(1040)/home/burhanie/public_html/store/system/library/db/mysqli.php中第10行的連接太多
警告:mysqli :: close()[mysqli.close]:無法在第58行的/home/burhanie/public_html/store/system/library/db/mysqli.php中獲取mysqli
以下是來自mysqli.php文件的opencart代碼
public function __construct($hostname, $username, $password, $database,$port = '3306') {$this->link = new \mysqli($hostname, $username, $password, $database, $port);
if ($this->link->connect_error) {
trigger_error('Error: Could not make a database link (' . $this->link->connect_errno . ') ' . $this->link->connect_error);
exit();
}
$this->link->set_charset("utf8");
$this->link->query("SET SQL_MODE = ''");
}
下面是phpmyadmin顧問的屏幕截圖。 哪個狀態表明opencart正在使用太多連接。 這似乎是一個錯誤
驗證配置中的max_connections並在/etc/my.cnf中對其進行本地AND更改
SHOW VARIABLES LIKE 'max_connections';
SET GLOBAL max_connections = 200;
僅增加max_connections不是解決方案。
根據您的mysqladmin建議,您需要優化查詢以及數據庫配置。
一些主要問題是-
臨時表經常在磁盤上創建。
聯接不使用索引。
key_buffer_size似乎設置不正確。
由於上述原因,您的查詢將花費更多時間並排在隊列中,而不是沒有空閑的連接,因此將使用所有連接,並且在使用所有連接后將不允許新連接。
除了查詢/數據庫優化外,您還需要檢查如何在應用程序中使用連接,以及連接是否按應用正確關閉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.