• This forum has a zero tolerance policy regarding spam. If you register here to publish advertising, your user account will be deleted without further questions.

Nach Erhöhung der SQL-Verbindungen wird falsches Web angezeigt

Vhost neu generieren Wie geht das ? Danke

Kontrollier mal die vHost und lass sie gegebenfalls neu generieren

Hallo Danke und wie lasse ich die Vhost neu generieren?
Danke !
Auf das Panel komme ich leider nicht mehr oder noch nicht.
Hab hier 1000 Verbindungen eingetragen...
. hauptsache die Projekte laufen wieder... Bis auf das eine.
Allerdings schnell ist auch noch anders. Muss das noch optimieren.
Also wie
 
Hallo Danke und wie lasse ich die Vhost neu generieren?
Afaik mit "/usr/local/psa/admin/bin/websrvmng -a"
Allerdings _VORHER_ kontrollieren was in den vHosts steht!

Allerdings schnell ist auch noch anders. Muss das noch optimieren.
Wenn du bereits das Limit von 100 _aktiven_ und CPU-fressenden Verbindungen erreicht hast (und diese nicht nur rumduempeln) dann ist es kein Wunder!
tuning-primer sollte ein paar interessante Anhaltspunkte liefern aber an einem gewissen Punkt kommt du nicht um viel RAM, Datenbank-Caching und schnelle Festplatten/SSD rum.
 
Die Ursache wird sicherlich nicht die Anzahl der Verbindungen sein, sondern andere Parameter. Poste mal bitte deine Einstellungen in der my.cnf und sag uns mal, welche CPU(s) und wieviel RAM in deinem Server steckt.
Vorweg: Eine optimale Einstellung für MySQL gibt es meiner Ansicht nach nicht wirlich, denn es kommt immer darauf an, wie der Server genutzt wird. Man kann aber zumindest eine grobe Richtung einschlagen und dann nach und nach den Server anhand der jeweils ermittelten Werte weiter optimieren.

Die Daten für die vhosts werden ja aus den Parametern generiert, die in der Datenbank hinterlegt sind. Wenn aber die Datenbank aus dem letzten Loch pfeift und keinen Output liefert kann es passieren, dass die vhosts unvollständig sind und deshalb Chaos raus kommt. Von daher würde ich erst der Datenbank etwas Luft verschaffen und im Anschluss die vhosts neu generieren und abschließend den Apache neu starten.
 
Server Parameter

Hallo,
Danke schon einmal für die ersten wichtigen Tipps.
Also folgender Server hab ich, leider wurde ja der Footer gelöscht da ich ja noch neu im Forum bin, da stand die Konfiguration drin....
Ich habe die folgende Serverkonfiguration
Intel® Core™ i7-920 Quad-Core
inkl. Hyper-Threading-Technologie
Arbeitsspeicher8 GB DDR3 RAMFestplatten2 x 750 GB SATA-II HDD
(Software-RAID 1) Netzwerkkarte 1 GBit OnBoard
mit 100 MBit-AnbindungBackup Space100 GBTrafficUnlimited*

Auch die Badeanzug-Shop.eu lief bis vorgestern... und ich hatte keine Änderungen vorgenommen. das einzige was verändert wurde war das Anpassen der max Verbindungen.

Die Installationen sind derzeit ca 150 Wordpress installationen. Geplant sind noch 5 weitere...
Laut Panel wenn ich mich eingeloggt habe sind 1,2 GB von den 8 GB ausgelastet. Also müsste noch Platz nach oben sein.

Zum Tunen, das hab ich noch nie gemacht und wäre hier um einen Link zu einer brauchbaren Anleitung (möglichst auf Deutsch) sehr dankbar.
Da ich nicht weiss welche etwas taugt bin ich euch sehr dankbar wenn Ihr mir dafür einen Link geben könntet. Danke Viele Grüße aus dem Schwarzwald
 
Das was du eben gelernt hast ist dass ei Klicki-Klicki-Bunti Interface (in diesem Fall Plesk) nicht die Arbeit auf der Konsole abnehmen kann und somit dein Wissensstand den Voraussetzungen nicht entspricht.
Empfehlenswert waere dringends ein mananged-Server.

Weder die RAM-Belastung noch Festplattenbelastung oder die CPU-Belastung (Load) allein geben dir Aufschluss ueber wie es deinem Server geht.
In deinem Fall sind die Fragen
- warum soviele gleichzeitige Verbindungen staendig offen sind
- wie die Gesamtbelastung des Systems ist

Eine "Anleitung" a la "dann Variable X auf Wert Y setzen" gibt es nicht sondern es ist -wie die meisten Konfigurationsmassnahmen bei Server- ein trial by error mit den ueblichen Werkzeugen wie tuning-primer, ab/loic, mrtg, ...

Da du die Frage wie denn die vHosts aussehen scheinbar geflissentlich umgehst gehe ich mal davon aus dass du entweder nicht weisst was ein vHost ist oder keine Antwort geben kannst. Ohne solche fundamentale Grundinformationen ist es jedoch ein reines Ratespiel fuer uns. Das Forum soll Admins bei Problemen und Fehler mit Rat und Tat zur Seite stehen, nicht jahrelanges Trainung und Buecher ersetzen.

In meinem vorigen Beitrag habe ich aber die Moeglichkeit zum Neuerstellen der vHosts angegeben.
 
Das was du eben gelernt hast ist dass ei Klicki-Klicki-Bunti Interface (in diesem Fall Plesk) nicht die Arbeit auf der Konsole abnehmen kann und somit dein Wissensstand den Voraussetzungen nicht entspricht.
Empfehlenswert waere dringends ein mananged-Server.

Weder die RAM-Belastung noch Festplattenbelastung oder die CPU-Belastung (Load) allein geben dir Aufschluss ueber wie es deinem Server geht.
In deinem Fall sind die Fragen
- warum soviele gleichzeitige Verbindungen staendig offen sind
- wie die Gesamtbelastung des Systems ist

Eine "Anleitung" a la "dann Variable X auf Wert Y setzen" gibt es nicht sondern es ist -wie die meisten Konfigurationsmassnahmen bei Server- ein trial by error mit den ueblichen Werkzeugen wie tuning-primer, ab/loic, mrtg, ...


In meinem vorigen Beitrag habe ich aber die Moeglichkeit zum Neuerstellen der vHosts angegeben.
Das werde ich morgen (äh heute) so zwischen 10-12h ausprobieren
Sehr wohl weiss ich was die Vhost ist. Allerdings war ich bis gerade eben auf einem Geburtstag und werde dies morgen früh posten. (Never Change a running system) wenn man noch was vor hat.
Bei einem Managed Server hatte ich das Problem auch... Die Jungs waren dann nicht erreichbar und so möchte ich nun das wissen für mich selbst beanspruchen und das ein oder andere lernen...
Danke
 
OK, halten wir schon einmal diese Daten fest:
  • Core i7 920 Quadcore inkl. HT
  • 8 GB RAM
  • Primär Shops und Wordpress Installationen
    Vorsichtig geschätzt ~ 200 Datenbanken
Es fehlen noch der Auszug aus der /etc/mysql/my.cnf!

Ich denke nicht, dass die Verbindungen ausgelastet sind, sondern viel mehr, dass der MySQL Server nicht mehr in der Lage ist, die neuen Verbindungen zu bedienen, weil er mit den bisherigen überlastet ist. Dir können keine 100 Paar Schuhe helfen, wenn die alle 4 Nummern zu klein sind. Das Laufen wird mit jedem Paar weh tun.
 
my.cnf

Hallo, also wie versprochen die my.cnf
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1
#
# * Fine Tuning
#
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 128K
thread_cache_size = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover = BACKUP
#max_connections = 1200
#table_cache = 64
#thread_concurrency = 10


user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1
#
# * Fine Tuning
#
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 128K
thread_cache_size = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover = BACKUP
#max_connections = 1200
#table_cache = 64
#thread_concurrency = 10
#
# * Query Cache Configuration
#
query_cache_limit = 1M
query_cache_size = 16M
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
#log = /var/log/mysql/mysql.log
#
# Error logging goes to syslog. This is a Debian improvement :)
#
# Here you can see queries with especially long duration
#log_slow_queries = /var/log/mysql/mysql-slow.log
#long_query_time = 2
#log-queries-not-using-indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
# other settings you may need to change.
#server-id = 1
#log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
#binlog_do_db = include_database_name
#binlog_ignore_db = include_database_name

[mysqldump]
quick
quote-names
max_allowed_packet = 16M

[mysql]
#no-auto-rehash # faster start of mysql but no tab completition

[isamchk]
key_buffer = 16M

# You might want to disable InnoDB to shrink the mysqld process by circa 100MB.
#skip-innodb
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem



[mysqldump]
quick
quote-names
max_allowed_packet = 16M

[mysql]
#no-auto-rehash # faster start of mysql but no tab completition

[isamchk]
key_buffer = 16M

#
# * NDB Cluster
#
# See /usr/share/doc/mysql-server-*/README.Debian for more information.
#
# The following configuration is read by the NDB Data Nodes (ndbd processes)
# not from the NDB Management Nodes (ndb_mgmd processes).
#
# [MYSQL_CLUSTER]
# ndb-connectstring=127.0.0.1


#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
 
Hallo!
Also bei mir nicht.

mfG
Thorsten
 

Attachments

  • tbs-multimedia-sso.png
    tbs-multimedia-sso.png
    50.7 KB · Views: 113
Wenn deine Seiten unvorhersehbar gehen und nicht gehen, dann fährst du Resscourcen an die Wand. In deinem Fall kommt die Datenbank oder der PHP-Interpreter in Frage.

Die Antworten stehen in den entsprechenden Log-Files.

Lösen kannst du das nicht mit Plesk. Wenn überhaupt auf einem einzigen Server, dann nur mit dem nötigen Wissen, wie die Dienste ressourcen-sparender aufgesetzt werden können.
 
Was ist das für ein Sch.. im Moment sind alle seiten weiss. jedenfalls von hier aus.. Vielleicht doch den lokalen Rechner neu aufsetzen...

Es hilft auch mal den Adblock auszuschalten oder einfach einen anderen Browser ausprobieren...
 
Bitte sichere vorab deine /etc/mysql/my.cnf

Anschließend ersetze deine Konfiguration mit der nachfolgenden.

Vorab: Das ist keine Musterlösung, sondern eine Konfiguration, welche deutlich besser laufen dürfte, als deine bisherige. Die ursprüngliche Konfiguration stammt von einem sehr viel größeren Server und es sind einige Werte runtergesetzt worden, sodass die Konfiguration nicht deinen Speicher sprengen sollte.
Damit MySQL aber auch optimal läuft, sind noch einige Anpassungen vorzunehmen. Hierbei sind die Scripte wie mysqltuner und tuningprimer hilfreich. Es wertet die Laufzeitdaten des MySQL Servers aus und gibt nützliche Hinweise, welche Parameter ggf. angepasst werden.
Die Konfiguration wird sicherlich erstmal mehr Ressourcen brauchen, wie eigentlich nötig. Aber die Optimierung ist zeitaufwändig und wird dich die kommenden Tage und Wochen sicherlich noch eine Weile begleiten.
Code:
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
[client]
port            = 3306
socket          = /var/run/mysqld/mysqld.sock

# Here is entries for some specific programs
# The following values assume you have at least 32M ram

# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket          = /var/run/mysqld/mysqld.sock
nice            = 0

[mysqld]
local-infile=0
set-variable=local-infile=0
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
language        = /usr/share/mysql/english
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1
#
# * Fine Tuning
#
key_buffer              = 256M
max_allowed_packet      = 16M
thread_stack            = 256K
thread_cache_size       = 16
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover          = BACKUP
max_connections         = 32
join_buffer_size        = 64M
table_cache             = 2G
tmp_table_size          = 2G
max_heap_table_size     = 2G
thread_concurrency      = 4
wait_timeout            = 3600
interactive_timeout     = 900
sort_buffer_size        = 8M
read_rnd_buffer_size    = 4M
#
# * Query Cache Configuration
#
query-cache-type        = 1
query_cache_limit       = 64M
query_cache_size        = 512M
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
#log            = /var/log/mysql/mysql.log
#
# Error logging goes to syslog. This is a Debian improvement :)
#
# Here you can see queries with especially long duration
#log_slow_queries       = /var/log/mysql/mysql-slow.log
#long_query_time = 2
#log-queries-not-using-indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
#       other settings you may need to change.
#server-id              = 1
#log_bin                        = /var/log/mysql/mysql-bin.log
expire_logs_days        = 10
max_binlog_size         = 32M
#binlog_do_db           = include_database_name
#binlog_ignore_db       = include_database_name
#
# * BerkeleyDB
#
# Using BerkeleyDB is now discouraged as its support will cease in 5.1.12.
skip-bdb
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
# You might want to disable InnoDB to shrink the mysqld process by circa 100MB.
#skip-innodb
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem
innodb_buffer_pool_size = 128M


[mysqldump]
quick
quote-names
max_allowed_packet      = 16M

[mysql]
#no-auto-rehash # faster start of mysql but no tab completition

[isamchk]
key_buffer              = 16M

#
# * NDB Cluster
#
# See /usr/share/doc/mysql-server-*/README.Debian for more information.
#
# The following configuration is read by the NDB Data Nodes (ndbd processes)
# not from the NDB Management Nodes (ndb_mgmd processes).
#
# [MYSQL_CLUSTER]
# ndb-connectstring=127.0.0.1


#
# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/

Eine Anmerkung noch zu den maximalen Verbindungen:
Lass dich von der niedrigen Zahl nicht irritieren. Eine Erhöhung hat zugleich zur Folge, dass der MySQL-Server mehr Speicher belegen kann und belegt dieser zuviel Speicher, so fängt die Maschine an den Speicher auf der Festplatte auszulagern. Das Auslagern an sich ist nicht schlecht, solange es sich um Daten handelt, welche sehr selten benötigt werden und so nicht den RAM belegen. Werden jedoch hoch frequentierte Daten ausgelagert, so fängt der Server an zu rödeln und bremst sich mit dem ständigem lesen und schreiben von Daten auf der Platte aus.

Sollten die Verbindungen aus dem Ruder laufen, so prüfe, was für Verbindungen offen bleiben. Habe es schon erlebt, dass mit jedem Aufruf eine neue Verbindung geöffnet wurde, jedoch nicht wieder geschlossen oder wiederverwendet wurden. Falls das geschieht, permanente Verbindungen unterbinden. Die bringen keinen Vorteil, wenn trotzdem nur neue geöffnet werden und anschließend nur Ressourcen belegen.
 
Es hilft auch mal den Adblock auszuschalten oder einfach einen anderen Browser ausprobieren...

Sowohl im FF wie im Safari ist beides weiss...
Bannerblocker gibt es hier nicht, weil ich denke jeder Admin hat ein Stück Geld für seine Arbeit auch verdient. Wenn auch nur durch WErbung.
 
Noch angemerkt: Wenn der MySQL wieder normal arbeitet, die vhosts neu generieren lassen und den Apache zum Abschluss neu laden. Dann sollten wieder alles laufen.
 
Back
Top