Heim Datenbank MySQL-Tutorial mysql数据库连接过多的错误_MySQL

mysql数据库连接过多的错误_MySQL

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

统不能连接数据库,关键要看两个数据:
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ßer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

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)

So implementieren Sie Datenbankverbindungen und Transaktionsverarbeitung in FastAPI So implementieren Sie Datenbankverbindungen und Transaktionsverarbeitung in FastAPI Jul 30, 2023 am 11:45 AM

So implementieren Sie Datenbankverbindungen und Transaktionsverarbeitung in FastAPI Einführung: Mit der schnellen Entwicklung von Webanwendungen sind Datenbankverbindungen und Transaktionsverarbeitung zu einem sehr wichtigen Thema geworden. FastAPI ist ein leistungsstarkes Python-Webframework, das bei Entwicklern wegen seiner Geschwindigkeit und Benutzerfreundlichkeit beliebt ist. In diesem Artikel stellen wir vor, wie Sie Datenbankverbindungen und Transaktionen in FastAPI implementieren, um Sie beim Erstellen zuverlässiger und effizienter Webanwendungen zu unterstützen. Teil 1: Datenbankanbindung in FastA

So verwenden Sie eine PHP-Datenbankverbindung, um eine Paging-Abfrage zu implementieren So verwenden Sie eine PHP-Datenbankverbindung, um eine Paging-Abfrage zu implementieren Sep 08, 2023 pm 02:28 PM

So verwenden Sie eine PHP-Datenbankverbindung zum Implementieren von Paging-Abfragen. Bei der Entwicklung von Webanwendungen ist es häufig erforderlich, die Datenbank abzufragen und eine Paging-Anzeige durchzuführen. Als häufig verwendete serverseitige Skriptsprache verfügt PHP über leistungsstarke Datenbankverbindungsfunktionen und kann Paging-Abfragen problemlos implementieren. In diesem Artikel wird detailliert beschrieben, wie die PHP-Datenbankverbindung zum Implementieren von Paging-Abfragen verwendet wird, und es werden entsprechende Codebeispiele angehängt. Vorbereiten der Datenbank Bevor wir beginnen, müssen wir eine Datenbank vorbereiten, die die abzufragenden Daten enthält. Hier nehmen wir die MySQL-Datenbank als Beispiel:

Welche Spiele eignen sich für die 4050-Grafikkarte? Welche Spiele eignen sich für die 4050-Grafikkarte? Jan 06, 2024 pm 05:01 PM

Für die Gaming-Grafikkarte von Nvidia kommt es vor allem darauf an, welche Spiele sie spielen kann. Daher sind Freunde, die eine 4050-Grafikkarte kaufen möchten, natürlich neugierig, welche Spiele diese Grafikkarte spielen kann. Eigentlich sollte sie in der Lage sein, alle Spiele zu spielen . . Welche Spiele kann die 4050-Grafikkarte steuern? Antwort: Die 4050-Grafikkarte sollte in der Lage sein, alle auf dem Markt erhältlichen Computerspiele auszuführen. Seine Leistung ist mindestens mit der aktuellen 3060ti vergleichbar und die 3060ti kann alle aktuellen PC-Spiele fahren. (Wir werden die Leistung des 4050 anhand des 3060ti-Tests unten vorhersagen) 1. Was Spieletests betrifft, kann der 3060ti bei einer Auflösung von 1080p stabile 150 fps oder mehr aufrechterhalten. 2. Daher testen wir die Leistung direkt bei 2K-Auflösung.

Warum schlägt meine PHP-Datenbankverbindung fehl? Warum schlägt meine PHP-Datenbankverbindung fehl? Jun 05, 2024 pm 07:55 PM

Zu den Gründen für einen Verbindungsfehler einer PHP-Datenbank gehören: Der Datenbankserver läuft nicht, falscher Hostname oder Port, falsche Datenbankanmeldeinformationen oder fehlende entsprechende Berechtigungen. Zu den Lösungen gehören: Starten des Servers, Überprüfen des Hostnamens und Ports, Überprüfen der Anmeldeinformationen, Ändern von Berechtigungen und Anpassen der Firewall-Einstellungen.

Häufige Datenbankverbindungs- und Datenlese- und -schreibprobleme in C# Häufige Datenbankverbindungs- und Datenlese- und -schreibprobleme in C# Oct 10, 2023 pm 07:24 PM

Häufige Datenbankverbindungs- und Datenlese- und -schreibprobleme in C# erfordern spezifische Codebeispiele. Bei der C#-Entwicklung sind Datenbankverbindungs- und Datenlese- und -schreibprobleme der Schlüssel zur Sicherstellung der Codequalität und -leistung. In diesem Artikel werden einige häufig auftretende Datenbankverbindungs- und Datenlese- und -schreibprobleme vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Probleme besser zu verstehen und zu lösen. Probleme mit der Datenbankverbindung 1.1 Verbindungszeichenfolgenfehler Beim Herstellen einer Verbindung zur Datenbank besteht ein häufiger Fehler darin, dass die Verbindungszeichenfolge falsch ist. Der Verbindungsstring enthält die Verbindung zur Datenbank

Erweiterte PHP-Datenbankverbindungen: Transaktionen, Sperren und Parallelitätskontrolle Erweiterte PHP-Datenbankverbindungen: Transaktionen, Sperren und Parallelitätskontrolle Jun 01, 2024 am 11:43 AM

Erweiterte PHP-Datenbankverbindungen umfassen Transaktionen, Sperren und Parallelitätskontrolle, um die Datenintegrität sicherzustellen und Fehler zu vermeiden. Eine Transaktion ist eine atomare Einheit einer Reihe von Vorgängen, die über die Methoden beginTransaction(), commit() und rollback() verwaltet werden. Sperren verhindern den gleichzeitigen Zugriff auf Daten über PDO::LOCK_SHARED und PDO::LOCK_EXCLUSIVE. Die Parallelitätskontrolle koordiniert den Zugriff auf mehrere Transaktionen über MySQL-Isolationsstufen (nicht festgeschriebenes Lesen, festgeschriebenes Lesen, wiederholbares Lesen, serialisiert). In praktischen Anwendungen werden Transaktionen, Sperren und Parallelitätskontrolle für die Produktbestandsverwaltung auf Einkaufswebsites verwendet, um die Datenintegrität sicherzustellen und Bestandsprobleme zu vermeiden.

So konfigurieren Sie die Datenbankverbindung in mybatis So konfigurieren Sie die Datenbankverbindung in mybatis Jan 15, 2024 pm 02:12 PM

So konfigurieren Sie die Datenbankverbindung in mybatis: 1. Geben Sie die Datenquelle an. 3. Konfigurieren Sie den Typprozessor und den Mapper. 5. Konfigurieren Sie Aliase. Detaillierte Einführung: 1. In der Datei „mybatis-config.xml“ müssen Sie die Datenquelle konfigurieren, die eine Datenbankverbindung bereitstellt Die Normalität von Datenbanktransaktionen erfordert auch die Konfiguration des Transaktionsmanagers 3. Konfigurieren Sie den Typprozessor und den Mapper usw.

Wie man eine Verbindung zu Datenbanken herstellt, diese betreibt und SQL-Abfragen bearbeitet Wie man eine Verbindung zu Datenbanken herstellt, diese betreibt und SQL-Abfragen bearbeitet Aug 02, 2023 am 09:06 AM

Wie man die Datenbank anschließt und betreibt und SQL-Abfragen verarbeitet. Bei der Entwicklung von Anwendungen sind Datenbankanbindung und -betrieb ein sehr wichtiger Teil. Datenbanken sind ein wichtiges Werkzeug zum Speichern und Verwalten von Daten, und SQL (StructuredQueryLanguage) ist eine Standardsprache zum Abfragen und Betreiben von Datenbanken. In diesem Artikel erfahren Sie, wie Sie eine Datenbank anbinden und betreiben und zeigen einige Codebeispiele für den Umgang mit SQL-Abfragen. Mit der Datenbank verbinden: Zuerst müssen wir eine Verbindung mit der Datenbank herstellen, um fortzufahren

See all articles