Løsningen er at ændre /etc/mysql/my.cnf og tilføje følgende linje: sætvariabel = max_connections=500
Eller tilføj parameteren max_connections=500 til opstartskommandoen Det er at ændre det maksimale antal forbindelser og derefter genstarte MySQL. Standardantallet af forbindelser er 100, hvilket er for få, så det er let at få den samme fejl. Her er instruktionerne til mysql.com hjemmeside: Hvis du får fejlen 'For mange forbindelser', når du prøver at oprette forbindelse til mysqld-serveren, betyder det, at alle tilgængelige forbindelser er i brug af andre klienter.
Antallet af tilladte forbindelser styres af max_connections systemvariabel. Dens standardværdi er 100. Hvis du har brug for at understøtte flere forbindelser, bør du genstarte MySQLD med en højere værdi for denne variabel.
MySQLD tillader faktisk, at max_connections+1 klienter kan forbinde. Den ekstra forbindelse er reserveret til brug af konti, der har SUPER-privilegiet. Ved at give SUPER-privilegiet til administratorer og ikke til almindelige brugere (som ikke burde have brug for det), kan en administrator forbinde til serveren og bruge SHOW PROCESSLIST til at diagnosticere problemer, selvom det maksimale antal uprivilegerede klienter er forbundet. Se afsnit 13.5.4.19, "VIS PROCESSLIST-syntaks".
Det maksimale antal forbindelser, MySQL kan understøtte, afhænger af kvaliteten af trådbiblioteket på en given platform. Linux eller Solaris burde kunne understøtte 500-1000 samtidige forbindelser, afhængigt af hvor meget RAM du har, og hvad dine klienter laver. Statiske Linux-binære filer leveret af MySQL AB kan understøtte op til 4000 forbindelser.
1. Det kan være et problem med MySQL's Max Connections-indstillinger 2. Det kan være flere inserts, og opdateringsoperationen lukker ikke sessionen, og du skal konfigurere transaktionsunderstøttelse i spring. Opløsning: 1. Ændr timeout-tiden for sessionen i Tomcat til 20 (ikke obligatorisk) 2. At give transaktionsunderstøttelse for et stort behandlingsvolumen af databaseindsættelses- eller opdateringsoperationer.
=======================================
Her er løsningen:
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "For mange forbindelser"
Årsag: Fordi din mysql-installationsmappemy.iniAntallet af samtidige forbindelser i systemet er for lille, eller systemet er optaget, hvilket gør antallet af forbindelser fuldt Løsning: Åbn MYSQL-installationsmappen og åbn MY.INI find max_connections (omkring linje 93) er standarden 100. Generelt er det mere hensigtsmæssigt at sætte den til 500~1000, genstarte MySQL, så 1040-fejlen bliver løst.
max_connections=1000
Sørg for at genstarte MYSQL, så det virker
CMD->
Net Stop MySQL
NetStart MySQL
Med hensyn til problemet med ikke at kunne starte MySQL efter at have ændret innodb_log_file_size
innodb_buffer_pool_size=768M innodb_log_file_size=256M innodb_log_buffer_size=8M innodb_additional_mem_pool_size=4M innodb_flush_log_at_trx_commit=0 innodb_thread_concurrency=20 Ovenstående er den foreløbige optimering af innodb-motoren; det blev fundet, at der var et problem ved opdatering innodb_log_file_size=256M; så længe denne blev tilføjet, kunne den ikke starte.
Senere fandt jeg ud af, at jeg først skulle STOPPE tjenesten og derefter slette den oprindelige fil......... Open /MySQL Server 5.5/data
Slet ib_logfile0, ib_logfile1........ ib_logfilen Åbn derefter muligheden og start den med succes.
|