Heim Datenbank MySQL-Tutorial 怎样解决mysql 连接过多的错误?_MySQL

怎样解决mysql 连接过多的错误?_MySQL

Jun 01, 2016 pm 01:57 PM
Ja 连接数据库

    问:怎样解决mysql连接过多的错误?

答:系统不能连接数据库,关键要看两个数据:

1、数据库系统允许的最大可连接数max_connections。这个参数是可以设置的。如果不设置,默认是100。最大是16384。

2、数据库当前的连接线程数threads_connected。这是动态变化的。

查看max_connections、max_connections的办法见后。

如果 threads_connected == max_connections 时,数据库系统就不能提供更多的连接数了,这时,如果程序还想新建连接线程,数据库系统就会拒绝,如果程序没做太多的错误处理,就会出现类似强坛的报错信息。

因为创建和销毁数据库的连接,都会消耗系统的资源。而且为了避免在同一时间同时打开过多的连接线程,现在编程一般都使用所谓数据库连接池技术。

但数据库连接池技术,并不能避免程序错误导致连接资源消耗殆尽。

这种情况通常发生在程序未能及时释放数据库连接资源或其他原因造成数据库连接资源不能释放,但强坛系统估计不会发生这种低级的编程错误。

该错误的简便的检查办法是,在刷新强坛页面时,不断监视threads_connected的变化。如果max_connections足够大,而 threads_connected值不断增加以至达到max_connections,那么,就应该检查程序了。当然,如果采用数据库连接池技术, threads_connected增长到数据库连接池的最大连接线程数时,就不再增长了。

从强坛出错的情况看,更大的可能性是数据库系统没能进行适当地配置。下面提出一点建议。供参考

让你们的工程师把MySQL的最大允许连接数从默认的100调成32000。这就不会老出现连接过多的问题了。

查看max_connections

进入MySQL,用命令:

show variables

查看数据库最大可连接数的变量值:

max_connections

查看threads_connected

进入MySQL,用命令:

show status查看当前活动的连接线程变量值:

threads_connected

设置max_connections

设置办法是在my.cnf文件中,添加下面的最后红色的一行:

[mysqld]
port=3306
#socket=MySQL
skip-locking
set-variable = key_buffer=16K
set-variable = max_allowed_packet=1M
set-variable = thread_stack=64K
set-variable = table_cache=4
set-variable = sort_buffer=64K
set-variable = net_buffer_length=2K
set-variable = max_connections=32000

修改完毕后,重启MySQL即可。当然,为了确保设置正确,应该查看一下max_connections。

注意:

1、虽然这里写的32000。但实际MySQL服务器允许的最大连接数16384;

2、除max_connections外,上述其他配置应该根据你们系统自身需要进行配置,不必拘泥;

3、添加了最大允许连接数,对系统消耗增加不大。

4、如果你的mysql用的是my.ini作配置文件,设置类似,但设置的格式要稍作变通。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie gehe ich mit SQLException um, wenn ich eine Verbindung zur Datenbank in Java herstelle? Wie gehe ich mit SQLException um, wenn ich eine Verbindung zur Datenbank in Java herstelle? Jun 24, 2023 pm 09:23 PM

In Java-Programmen ist das Herstellen einer Verbindung zur Datenbank ein sehr häufiger Vorgang. Obwohl vorgefertigte Klassenbibliotheken und Tools zum Herstellen einer Verbindung zur Datenbank verwendet werden können, können während der Programmentwicklung dennoch verschiedene abnormale Situationen auftreten, darunter SQLException. SQLException ist eine von Java bereitgestellte Ausnahmeklasse. Sie beschreibt Fehler, die beim Zugriff auf die Datenbank auftreten, z. B. Fehler in der Abfrageanweisung, nicht vorhandene Tabellen, Verbindungsabbrüche usw. Für Java-Programmierer, insbesondere diejenigen, die JDBC (Java Data

Wie lese ich die ersten paar Datensätze in einer Datenbank mit PHP? Wie lese ich die ersten paar Datensätze in einer Datenbank mit PHP? Mar 22, 2024 am 10:03 AM

Wie lese ich die ersten paar Datensätze in einer Datenbank mit PHP? Bei der Entwicklung von Webanwendungen müssen wir häufig Daten aus der Datenbank lesen und dem Benutzer anzeigen. Manchmal müssen wir nur die ersten paar Datensätze in der Datenbank anzeigen, nicht den gesamten Inhalt. In diesem Artikel erfahren Sie, wie Sie mit PHP die ersten Datensätze in der Datenbank lesen und spezifische Codebeispiele bereitstellen. Gehen Sie zunächst davon aus, dass Sie eine Verbindung zur Datenbank hergestellt und die Tabelle ausgewählt haben, die Sie bearbeiten möchten. Das Folgende ist ein einfaches Beispiel für eine Datenbankverbindung:

So stellen Sie eine Verbindung zur Datenbank in der Go-Sprache her So stellen Sie eine Verbindung zur Datenbank in der Go-Sprache her Dec 12, 2023 pm 03:51 PM

Die Go-Sprache stellt eine Verbindung zur Datenbank her, indem sie den Datenbanktreiber importiert, eine Datenbankverbindung herstellt, SQL-Anweisungen ausführt, vorbereitete Anweisungen verwendet und Transaktionen verarbeitet. Detaillierte Einführung: 1. Importieren Sie den Datenbanktreiber und verwenden Sie das Paket github.com/go-sql-driver/mysql, um eine Verbindung zur MySQL-Datenbank herzustellen. 2. Stellen Sie eine Datenbankverbindung her und geben Sie die Datenbankverbindungsinformationen an, einschließlich der Datenbankadresse und des Benutzers Name, Passwort usw. Stellen Sie eine Datenbankverbindung usw. über die Funktion sql.Open her.

Verwenden der Go-Sprache zum Herstellen einer Verbindung zur Datenbank: Verbessern Sie die Anwendungsleistung und -effizienz Verwenden der Go-Sprache zum Herstellen einer Verbindung zur Datenbank: Verbessern Sie die Anwendungsleistung und -effizienz Jan 23, 2024 am 08:57 AM

Verwendung der Go-Sprache zum Herstellen einer Verbindung zur Datenbank: Verbesserung der Anwendungsleistung und -effizienz Mit der Entwicklung von Anwendungen und der steigenden Anzahl von Benutzern wird die Datenspeicherung und -verarbeitung immer wichtiger. Um die Leistung und Effizienz von Anwendungen zu verbessern, ist die ordnungsgemäße Verbindung und der Betrieb der Datenbank von entscheidender Bedeutung. Als schnelle, zuverlässige und hochgradig parallele Entwicklungssprache hat die Go-Sprache das Potenzial, eine effiziente Leistung bei der Verarbeitung von Datenbanken zu bieten. In diesem Artikel wird erläutert, wie Sie mithilfe der Go-Sprache eine Verbindung zur Datenbank herstellen, und es werden einige Codebeispiele bereitgestellt. Installieren Sie den Datenbanktreiber mit der Go-Sprache

Was ist eine NEAR-Protokollmünze? Was sind die Merkmale von NEAR-Protokollmünzen? Was ist eine NEAR-Protokollmünze? Was sind die Merkmale von NEAR-Protokollmünzen? Mar 04, 2024 pm 11:20 PM

NEARProtocol: Eine skalierbare, benutzerfreundliche Blockchain-Plattform NEARProtocol ist eine Blockchain-Plattform mit Sharding-Technologie, die darauf ausgelegt ist, die Herausforderungen zu bewältigen, denen sich die Blockchain-Technologie in Bezug auf Skalierbarkeit, Benutzerfreundlichkeit und Sicherheit gegenübersieht. Es bietet Entwicklern eine effiziente und benutzerfreundliche Plattform, die es ihnen ermöglicht, dezentrale Anwendungen (dApps) einfach zu erstellen und bereitzustellen. NEARProtocol soll die Hürden für die Blockchain-Entwicklung senken und gleichzeitig ein hohes Maß an Effizienz und Sicherheit bieten. Durch den Einsatz der Sharding-Technologie kann NEARProtocol umfangreiche Transaktionen besser abwickeln und Benutzern schnellere Transaktionsbestätigungszeiten bieten. Insgesamt ist NEARProtocol darauf ausgelegt, Folgendes bereitzustellen

Schritte und Techniken zur Implementierung der Produktbestandszählung mit PHP Schritte und Techniken zur Implementierung der Produktbestandszählung mit PHP Aug 18, 2023 am 08:39 AM

Schritte und Techniken zur Implementierung des Produktinventars in PHP In der E-Commerce-Branche ist die Verwaltung des Produktinventars eine sehr wichtige Aufgabe. Durch eine rechtzeitige und genaue Bestandszählung können Verkaufsverzögerungen, Kundenbeschwerden und andere Probleme aufgrund von Bestandsfehlern vermieden werden. In diesem Artikel werden die Schritte und Techniken zur Verwendung von PHP zur Implementierung der Produktbestandszählung vorgestellt und Codebeispiele bereitgestellt. Schritt 1: Erstellen Sie eine Datenbank. Zuerst müssen wir eine Datenbank erstellen, um Produktinformationen zu speichern. Erstellen Sie eine Datenbank mit dem Namen „inventory“ und dann eine Datenbank mit dem Namen „prod

Wie viele Pins hat die Kabelschnittstelle des Antec 650-Netzteil-Motherboards? (Verdrahtungsplan für das Antec 650-Netzteil) Wie viele Pins hat die Kabelschnittstelle des Antec 650-Netzteil-Motherboards? (Verdrahtungsplan für das Antec 650-Netzteil) Jan 03, 2024 am 10:46 AM

Wie viele Pins hat das Antec 650W-Motherboard-Kabel? Das Stromkabel des Antec 650W-Netzteil-Motherboards hat normalerweise 24 Pins, was die größte Stromschnittstelle auf dem Motherboard darstellt. Seine Funktion besteht darin, das Motherboard und das Netzteil zu verbinden, um das Motherboard und andere Systemkomponenten mit Strom zu versorgen. Darüber hinaus kann das Antec 650W-Netzteil auch andere Arten von Stromschnittstellen enthalten, wie z. B. CPU8pin, PCIe6+2pin usw., um andere Komponenten wie die CPU und unabhängige Grafikkarten anzuschließen. Tutorial zum Motherboard-Routing Unter Motherboard-Routing versteht man den Prozess der Verbindung von Schaltkreisen zwischen verschiedenen elektronischen Komponenten beim Entwurf eines Motherboards. Dabei müssen Faktoren wie Schaltungsstabilität, Signalübertragungsgeschwindigkeit und Genauigkeit berücksichtigt werden. Achten Sie bei der Verkabelung entsprechend dem Schaltplan auf die Anordnung und wählen Sie die richtige Leitungsbreite und den zu vermeidenden Abstand aus

Erste Schritte mit der Go-Sprache: Grundkonzepte von Datenbankverbindungen Erste Schritte mit der Go-Sprache: Grundkonzepte von Datenbankverbindungen Jan 23, 2024 am 08:17 AM

Lernen Sie die Go-Sprache: Grundkenntnisse in der Verbindung mit Datenbanken sind erforderlich. Die Go-Sprache ist eine Open-Source-Programmiersprache. Aufgrund ihrer einfachen und effizienten Funktionen wird sie von immer mehr Entwicklern geliebt und verwendet. Während des Entwicklungsprozesses ist es häufig erforderlich, eine Verbindung mit der Datenbank herzustellen, um Vorgänge wie Lesen, Schreiben, Aktualisieren und Löschen von Daten auszuführen. Daher ist es eine sehr wichtige Fähigkeit, zu lernen, wie man eine Verbindung zu einer Datenbank in der Go-Sprache herstellt. Datenbanktreiber In der Go-Sprache ist ein Datenbanktreiber erforderlich, um eine Verbindung zur Datenbank herzustellen. Derzeit sind die wichtigsten Datenbanktreiber der Go-Sprache:

See all articles