Autor |
Sõnum |
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
Ei oskagi oma peaga kuidagi kusagilt hakata asja uurima.
Vahepeal suvalisel hetkel laeb mõnda lehte (saidil ringi klikates mööda menüüsid) siga kaua. See ei olene lehtedest sest mõnikord laadib sama lehet ka normaalselt ja siis suvalisel hetkel jube kaua.
Näiteks ka lihtsalt refreshida lehte siis on kord OK ja siis taas jama.
Saidil küljes ka selline jubin Page generated in 0.104974
Antud hetke näitki pole normaalne see peaks ikka algama 0.01...... sellise algusega oleks juba ok aga vahepeal on see 2.blablablaaa või rohkemgi veel.
Et kust alustada tuvastamise või uurimisega mis seda võib põhjustada...alguses oli server täiesti ok...miski lambi ajast hakkas nii käituma...miskeid erilisi uuendusi lisasid poel juurde tehtud ja pandud. Kogu kasutus ja hooldus on olnud nagu alati.
Ei taha uskuda, et tegemist on väsiva rauaga kuna sellist jama ei saa omale teenuse pakkuja lubada arvestades tema mainet. Ise serverile ligi ei pääse kuna asub kusagil kesk euroopas....ise kaldun arvama miski konfi viga.
Serveris 64bit Debian Wheezy. Masin täiesti tavaline veebiserver. Ei meilindust ja midagi sellist. Apache, PHP, MySQL jooksmas
|
|
|
|
|
|
|
|
obundra
Vana Pingviin
Vanus: 50
Liitunud: 04.08.2005
Postitused: 1213
Asukoht: 127.0.0.1
Distributsioon: RHEL, Solaris, Debian, Gentoo
|
|
Top ja iotop alustuseks, et näha mis ressurssi tarbib ning mysqli võiks ka sättida aeglaseid päringuid logima(konfis log-slow-queries) ja pärast seda logi näiteks mysqldumpslow abil uurida.
|
|
|
|
_________________ IT teenused
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
Tundub, et mysql ongi see pudelikael kuna vahepeal on CPU 90%
A kuidas, mis, kus ma konfama peaks slow asja kohat logimist? Pole mingit aimugi või kuidas fiksata see tohutu CPU kasutus?
Oli TOP-is CPU 100% ja Page generated in 75.318126
|
|
|
|
|
|
|
|
sander85
Vana Pingviin
Vanus: 39
Liitunud: 08.08.2005
Postitused: 4359
Asukoht: Tallinn (vahel ka Virtsu)
Distributsioon: Mageia, Debian, CentOS
|
|
on olemas selline asi nagu mysqltuner - näitab sulle ära, kuidas oma mysql-i kiiremaks seadistada. Tasuks sellega korra üle lasta ja vaadata, et mis tulemus on. Kui masinas mälu üle on, siis ei teeks paha ka query cache. Ja kindlasti järgi vaadata, et millised queryd aeglased on.
|
|
|
|
_________________
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
See mysqltuner andis väga huvitava teate
Kood: |
[!!] Unable to find mysqladmin in your $PATH. Is MySQL installed? |
See pole ju võimalik, et pole installitud aga kus ma tean milline see PATH on õige...ise käsitsi midagi ei muutnud...kogu paigaldus käis default installina...
|
|
|
|
|
|
|
|
obundra
Vana Pingviin
Vanus: 50
Liitunud: 04.08.2005
Postitused: 1213
Asukoht: 127.0.0.1
Distributsioon: RHEL, Solaris, Debian, Gentoo
|
|
Ilmselt paigaldamata mysql-client, mysqladmin on selles pakis.
|
|
|
|
_________________ IT teenused
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
krdi lammas ikka, nikerdasin omas süleris kus kõik see jama puudub
Aga servust sain siis sellise tulemuse Sander85 pakutud tuningu jubinaga. Mis ma siit siis targemaks saan...ega see pilt just kõige ilusam pole järeldades et OK peaks seal olema enamus
MySQLtuning väljund
Kood: | # ./mysqltuner.pl
>> MySQLTuner 1.2.0 - Major Hayden <major@mhtx.net>
>> Bug reports, feature requests, and downloads at http://mysqltuner.com/
>> Run with '--help' for additional options and output filtering
[OK] Logged in using credentials from debian maintenance account.
-------- General Statistics --------------------------------------------------
[--] Skipped version check for MySQLTuner script
[OK] Currently running supported MySQL version 5.5.31-0+wheezy1
[OK] Operating on 64-bit architecture
-------- Storage Engine Statistics -------------------------------------------
[--] Status: +Archive -BDB -Federated +InnoDB -ISAM -NDBCluster
[--] Data in MyISAM tables: 12M (Tables: 159)
[--] Data in InnoDB tables: 768K (Tables: 48)
[--] Data in PERFORMANCE_SCHEMA tables: 0B (Tables: 17)
[!!] Total fragmented tables: 48
-------- Security Recommendations -------------------------------------------
[OK] All database users have passwords assigned
-------- Performance Metrics -------------------------------------------------
[--] Up for: 15d 21h 36m 54s (87M q [63.596 qps], 7M conn, TX: 24B, RX: 11B)
[--] Reads / Writes: 39% / 61%
[--] Total buffers: 192.0M global + 2.7M per thread (151 max threads)
[OK] Maximum possible memory usage: 597.8M (15% of installed RAM)
[OK] Slow queries: 0% (2K/87M)
[!!] Highest connection usage: 100% (151/151)
[OK] Key buffer size / total MyISAM indexes: 16.0M/3.5M
[OK] Key buffer hit rate: 99.7% (498M cached / 1M reads)
[OK] Query cache efficiency: 43.2% (14M cached / 34M selects)
[OK] Query cache prunes per day: 0
[OK] Sorts requiring temporary tables: 0% (0 temp sorts / 1M sorts)
[OK] Temporary tables created on disk: 15% (2K on disk / 15K total)
[OK] Thread cache hit rate: 89% (852K created / 7M connections)
[!!] Table cache hit rate: 0% (159 open / 567K opened)
[OK] Open file limit used: 17% (184/1K)
[!!] Table locks acquired immediately: 87%
[OK] InnoDB data size / buffer pool: 768.0K/128.0M
-------- Recommendations -----------------------------------------------------
General recommendations:
Run OPTIMIZE TABLE to defragment tables for better performance
Enable the slow query log to troubleshoot bad queries
Reduce or eliminate persistent connections to reduce connection usage
Increase table_cache gradually to avoid file descriptor limits
Optimize queries and/or use InnoDB to reduce lock wait
Variables to adjust:
max_connections (> 151)
wait_timeout (< 28800)
interactive_timeout (< 28800)
table_cache (> 400)
|
|
|
|
|
|
|
|
|
imre
Vana Pingviin
Liitunud: 16.08.2005
Postitused: 2648
Asukoht: Saku kant
Distributsioon: Ubuntu
|
|
Võiksid fragmenteeritud tabelitega midagi ette võtta ja siis edasi vaadata kuidas käitub.
|
|
|
|
_________________ Enne teema püstitamist kasutage OTSINGUT
Küsi targalt: Infot siit!
Kui aru ei saa, siis küsi.
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
NU ma võtaks kõike ette mis vähegi parandaks olukorda kui vaid oskaks kusagilt midagigi teha
|
|
|
|
|
|
|
|
obundra
Vana Pingviin
Vanus: 50
Liitunud: 04.08.2005
Postitused: 1213
Asukoht: 127.0.0.1
Distributsioon: RHEL, Solaris, Debian, Gentoo
|
|
Optimeeri ja paranda:
Kood: | mysqlcheck -ukasutaja -pparool --auto-repair --optimize --all-databases |
ja mysql konfis muuda neid mysqltuneri soovitatud parameetreid vastavalt suuremaks või väiksemaks:
Kood: | max_connections (> 151)
wait_timeout (< 28800)
interactive_timeout (< 28800)
table_cache (> 400) |
|
|
|
|
_________________ IT teenused
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
obundra kirjutas: | Optimeeri ja paranda:
Kood: | mysqlcheck -ukasutaja -pparool --auto-repair --optimize --all-databases |
ja mysql konfis muuda neid mysqltuneri soovitatud parameetreid vastavalt suuremaks või väiksemaks:
Kood: | max_connections (> 151)
wait_timeout (< 28800)
interactive_timeout (< 28800)
table_cache (> 400) | |
Täänks abi eest aga ma ei saa mitte muhhvigi pihta kuidas noid käske anda...
Ehk viitsib keegi teadjam ka mu mysql conf failile pilgu hetita ja teha vajalikud muudatused...ise eriti ei tahaks näppida
Kood: |
#
# 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]
#
# * 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
lc-messages-dir = /usr/share/mysql
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 = 192K
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 = 100
#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.
# As of 5.1 you can enable the log at runtime!
#general_log_file = /var/log/mysql/mysql.log
#general_log = 1
#
# Error logging goes to syslog due to /etc/mysql/conf.d/mysqld_safe_syslog.cnf.
#
# 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
#
# * 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!
#
# * 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
#
# * 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/ |
Kuidas defragmentida tabeleid ???
|
|
|
|
|
|
|
|
obundra
Vana Pingviin
Vanus: 50
Liitunud: 04.08.2005
Postitused: 1213
Asukoht: 127.0.0.1
Distributsioon: RHEL, Solaris, Debian, Gentoo
|
|
No vaata mõttega oma konfi, seal on rida
Kood: | #max_connections = 100 |
# rea ees tähendab, et rida on välja kommenteeritud ja teda ei loeta, korja # sealt eest ära ja 100 asemele kirjuta mysqltuneri soovitatust(>151) suurem number, samamoodi ka nende ülejäänud soovitustega.Kui konfis ei juhtu sellist rida olema, siis tekita see sinna.Seejärel restardi mysql.
Ja defragmendib ning parandab:
Kood: | mysqlcheck -ukasutaja -pparool --auto-repair --optimize --all-databases |
Selle toksid käsureale, "kasutaja" on sinu mysqli admin kasutaja(root, kui pole määratud teisiti), tühikuid -ukasutaja ja -pparool vahele ei jäta.
|
|
|
|
_________________ IT teenused
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
Ei ma saa pihta, kas mysql on nii tuksis või mis pull on.
See defrag ei aidanud miskit, mysql tuneriga ...oehh kui mitukümmend korda juba seda tuuninud, iga kord tututab, et muuda seda ja toda nii palju ja naa palju...
Kaua ma kruvin neid väärtusi edasi tagasi
Ültse on imelik, et mysql käitub nii, varem pole sellist jama olnud. Kas äkki aitab kui mysql reinstallida???
|
|
|
|
|
|
|
|
spott
Admin
Vanus: 43
Liitunud: 04.06.2005
Postitused: 8857
Distributsioon: Ubuntu
|
|
ei - sul on baasiga probleem või mõne tarkvaraga, mis mysql-i koormab. Kui käsurealt toime ei tule - tee üks super kasutaja ja lase phpmyadminist optimeerimine kõigil serveri tabelitest läbi.
|
|
|
|
_________________ Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu
|
|
|
|
obundra
Vana Pingviin
Vanus: 50
Liitunud: 04.08.2005
Postitused: 1213
Asukoht: 127.0.0.1
Distributsioon: RHEL, Solaris, Debian, Gentoo
|
|
See mysqltuner ei anna tõeseid vastuseid kui teda käivitada paari minuti tagant ja kohe peale mysqli restarti, ta tahab, et mysql oleks umbes 24 tundi üleval olnud, siis on serveril juba statistikat kogunenud ja mysqltuneri soovitused on õigemad.
|
|
|
|
_________________ IT teenused
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
OK, selle tuneriga....
ehk oskab keegi miskit välja lugeda mysql_slow.log failist....
PhpMyAdminis kiki tabeleid selectinud ja analüüsinud ja tont kõike mis teinud...abi mitte midagi
|
mysql-slow.log.tar.gz |
Kirjeldus: |
|
Allalaadimised |
Failinimi: |
mysql-slow.log.tar.gz |
Failisuurus: |
3.01 kB |
Alla laaditud: |
307 kord(a) |
|
|
|
|
|
|
|
obundra
Vana Pingviin
Vanus: 50
Liitunud: 04.08.2005
Postitused: 1213
Asukoht: 127.0.0.1
Distributsioon: RHEL, Solaris, Debian, Gentoo
|
|
Vaata mis päringud aeglased on:
Kood: | mysqldumpslow -a -s c -t 10 /var/log/mysql/mysql-slow.log |
10 asemele kirjutad selle numbri palju päringuid näha tahad.
|
|
|
|
_________________ IT teenused
|
|
|
|
-IFFI-
Vana Pingviin
Vanus: 48
Liitunud: 25.06.2005
Postitused: 1411
Asukoht: Lappeenranta-Turku
Distributsioon: Linux MX
|
|
Täpselt sama logi tuli mis post üleval manusena kaasas
Aru ma ei saa mis toimub...
|
|
|
|
|
|
|
|
chris
Pingviini aktivist
Liitunud: 16.02.2009
Postitused: 146
Asukoht: Tallinn
Distributsioon: Debian 6.0/7.0
|
|
Tsitaat: | # Query_time: 107.077769 Lock_time: 0.000287 Rows_sent: 72 Rows_examined: 17922384 |
Query_time - päring võttis aega 107 sekundit
Lock_time - lukustamisega kaotatud aeg
Rows_sent - päringu tagastatud ridade arv
Rows_examined - päringu täitmisel üle käidud ridade arv.
Mida teha? Ausalt öeldes ei tea. Ainsaks niidiotsaks on läbi käidud ridade arv.
Minu silmis on see hiiglaslik ja ma üritaks seda numbrit vähendada vanade ridade kustutamise teel.
Kui vähendamine ei ole mõeldav, siis prooviksin saavutada seda, et tabel mahuks täielikult mällu. Kui ka see ei ole võimalik, siis prooviksin jagada tabeli asukoha mitme ketta vahel.
|
|
|
|
|
|
|
|
sander85
Vana Pingviin
Vanus: 39
Liitunud: 08.08.2005
Postitused: 4359
Asukoht: Tallinn (vahel ka Virtsu)
Distributsioon: Mageia, Debian, CentOS
|
|
chris kirjutas: | Tsitaat: | # Query_time: 107.077769 Lock_time: 0.000287 Rows_sent: 72 Rows_examined: 17922384 |
Query_time - päring võttis aega 107 sekundit
Lock_time - lukustamisega kaotatud aeg
Rows_sent - päringu tagastatud ridade arv
Rows_examined - päringu täitmisel üle käidud ridade arv.
Mida teha? Ausalt öeldes ei tea. Ainsaks niidiotsaks on läbi käidud ridade arv.
Minu silmis on see hiiglaslik ja ma üritaks seda numbrit vähendada vanade ridade kustutamise teel.
Kui vähendamine ei ole mõeldav, siis prooviksin saavutada seda, et tabel mahuks täielikult mällu. Kui ka see ei ole võimalik, siis prooviksin jagada tabeli asukoha mitme ketta vahel. |
See query tundub üleüldse väga kahtlane olevat, et kas seda tegevust üldse on vaja või milleks täpsemalt. Üldiselt tundub see olevat paljude probleemide algus, sest võib paasi pikkadeks pausideks umbe tõmmata.
|
|
|
|
_________________
|
|
|
|
|