Skocz do zawartości

Web Hosting Talk

  • progreso.pl

    Partner technologiczny

    Upraszczamy to, co inni starają się komplikować. Prosto, pewnie, przyjaźnie - tak robimy hosting!
  • Kei.pl

    Partner technologiczny

    Kei.pl działa na polskim rynku internetowym od 2000 roku. Obecnie na blisko 300 serwerach w Centrum Danych Kei.pl znajduje się kilkadziesiąt tysięcy stron WWW.
  • S-NET.info

    Partner technologiczny

    S-NET to dostawca usług dla biznesu. Najważniejsze usługi świadczone przez firmę to usługi Centrum Danych, dostęp do Internetu, transmisja danych oraz tranzyt do różnych operatorów.
  • Sprint Data Center

    Partner technologiczny

    Sprint Data Center to jedyne w Polsce północno-wschodniej i jednocześnie jedno z najnowocześniejszych w kraju centrum przechowywania i przetwarzania danych.

 

Optymalizacja mysql'a


27 odpowiedzi na ten temat

Optymalizacja mysql'a

#1 Kolopik

    Weteran WHT

  • WHT Pro
  • PipPipPipPipPipPipPipPip
  • 1032 postów
  • Skąd:Gliwice
  • Firma:CT8.pl
  • Imię:Kacper
  • Nazwisko:Dmochowski

Napisany 12 kwiecień 2010 - 16:12

Witam. Zainstalowałem mysq na serwerze, który ma 512MB ramu delikatnie zoptymalizowałem bazę, a mysql zjada mi 180MB ramu. Na tak małym serwerze da się to odczuć.
Mój skrypt korzysta tylko z jednej bazy danych, w bazie też mam jednego użytkownika i jak dobrze pamiętam 5 tabel ;p Na stronie przebywają maksymalnie 2 osoby :)
Mój my.cnf

#
# 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
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		= 32M
max_allowed_packet	= 11M
thread_stack		= 128K
thread_cache_size	= 12
# 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 	= 12M
query_cache_size 	= 12M
#
# * 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 	= 12M
#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



[mysqldump]
quick
quote-names
max_allowed_packet	= 12M

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

[isamchk]
key_buffer		= 12M

#
# * 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/


Możliwe, że w my.cnf coś popsułem, bo nigdy wcześniej nie optymalizowałem mysql'a :rolleyes:

Z góry dzięki za pomoc. Pozdrawiam.

#2 Mruczek

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 113 postów
  • Skąd:Kraków
  • Imię:Grzegorz

Napisany 12 kwiecień 2010 - 17:05

Odkomentuj:

#skip-innodb

Od razu dostaniesz "gratis" około 100MB RAMu. Oczywiście stracisz obsługę InnoDB :-)
Kot Mruczek

#3 BlueMan

    Programista

  • WHT Pro
  • PipPipPipPipPipPipPipPip
  • 1183 postów
  • Skąd:Sosnowiec
  • Imię:Szymon

Napisany 12 kwiecień 2010 - 17:07

Poszukaj na forum - są dostępne skrypty które podpowiadają co i jak należy skonfigurować.
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Zbieram punkty______________________________________________\/

PS. Co jest do wygrania? xD

#4 goompas

    Czasami na forum

  • Użytkownicy
  • 32 postów

Napisany 12 kwiecień 2010 - 19:37

Zajrzyj do /usr/share/doc/mysql-server-5.0/examples tam masz przyklady jak my.cnf dla roznych wariantow wydajnosciowych.

#5 Kolopik

    Weteran WHT

  • WHT Pro
  • PipPipPipPipPipPipPipPip
  • 1032 postów
  • Skąd:Gliwice
  • Firma:CT8.pl
  • Imię:Kacper
  • Nazwisko:Dmochowski

Napisany 12 kwiecień 2010 - 19:55

Zobacz postMruczek, o 12 kwiecień 2010 - 17:05, powiedział:

Odkomentuj:

#skip-innodb

Od razu dostaniesz "gratis" około 100MB RAMu. Oczywiście stracisz obsługę InnoDB :-)

Wielkie dzięki!
100MB w dół :)

Dzięki wszystkim za odpowiedzi, wszystkie są bardzo przydatne :rolleyes:

#6 lukasamd

    Stały użytkownik

  • WHT Pro
  • PipPipPipPipPip
  • 374 postów
  • Skąd:Przemków
  • Imię:Łukasz
  • Nazwisko:Tkacz

Napisany 17 maj 2010 - 19:37

Podczepię się pod temat - jak wyłączyć innodb na centosie i kloxo?
Plik my.cnf jest w etc, ale można go wywalić, a i tak mysql działa... sam już nie wiem, gdzie szukać.
SafeGroup.pl - Wszystko o bezpieczeństwie komputerowym
Działamy przy użyciu rozwiązań technicznych firmy Ultimahost

#7 ahes

    Stały użytkownik

  • Firma Bronze
  • PipPipPipPipPip
  • 217 postów

Napisany 17 maj 2010 - 19:57

Zobacz postlukasamd, o 17 maj 2010 - 19:37, powiedział:

Podczepię się pod temat - jak wyłączyć innodb na centosie i kloxo?
Plik my.cnf jest w etc, ale można go wywalić, a i tak mysql działa... sam już nie wiem, gdzie szukać.

MySQL ma swoje ustawienia domyślne, które plik konfiguracyjny nadpisuje. Dlatego działa po usunięciu my.cnf.

#8 SanKen

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 264 postów
  • Skąd:/var/logs
  • Imię:Matthew

Napisany 18 maj 2010 - 11:35

Zobacz postlukasamd, o 17 maj 2010 - 19:37, powiedział:

Podczepię się pod temat - jak wyłączyć innodb na centosie i kloxo?
Plik my.cnf jest w etc, ale można go wywalić, a i tak mysql działa... sam już nie wiem, gdzie szukać.

Nie wywalasz pliku tylko odznaczasz
usuwasz #
z linijki
#skip-innoDB
Wielkie dzięki tez 100mb w dół ;)

#9 lukasamd

    Stały użytkownik

  • WHT Pro
  • PipPipPipPipPip
  • 374 postów
  • Skąd:Przemków
  • Imię:Łukasz
  • Nazwisko:Tkacz

Napisany 18 maj 2010 - 11:47

Tak, ale w tym domyślnym pliku tego NIE MA, i w tym cały problem ;)

@ahes:
Ok, ale jak dopisałem co trzeba i zresetowałem, to brak jakichkolwiek zmian. Baza jak brała ~140 MB, tak bierze nadal. InnoDB dostępne, choć wpis w pliku od tego jest.
SafeGroup.pl - Wszystko o bezpieczeństwie komputerowym
Działamy przy użyciu rozwiązań technicznych firmy Ultimahost

#10 Miłosz

    Weteran WHT

  • Moderatorzy
  • PipPipPipPipPipPipPipPip
  • 2471 postów
  • Skąd:Bydgoszcz/Tuchola
  • Firma:Sys-Com
  • Imię:Miłosz
  • Nazwisko:Oller

Napisany 18 maj 2010 - 12:18

Niemożliwe ;) Właśnie sprawdzłem na jedym centosie i konfig ładuje z /etc/my.cnf. A sprawdzałeś ścieżki konfigów w /etc/init.d/mysqld?
Miłosz GG: 3312894 JID: ollerm@jabber.org
Konfiguracja i administracja serwerami dedykowanymi/RPS/VPS - Faktura VAT
Idealny hosting | Domeny | Hosting dla Firm

#11 tym

    Weteran WHT

  • WHT Pro
  • PipPipPipPipPipPipPipPip
  • 767 postów
  • Skąd:Poznań
  • Firma:DG

Napisany 18 maj 2010 - 13:20

Wystarczy dopisać... my.cnf ładuje się zawsze z /etc bądź /etc/mysql
Dopisz do swojego /etc/my.cnf skip-innodb, daj restart i po sprawie.
Szukasz ciekawych ofert serwerów VPS? Sprawdź na www.kuptanioserwer.pl
Masz problem z serwerem? Szybka reakcja, najlepsze rozwiązania, dobre ceny, faktura VAT. Kontakt PW.

#12 SanKen

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 264 postów
  • Skąd:/var/logs
  • Imię:Matthew

Napisany 18 maj 2010 - 21:21

Takie małe OT. Można gdzieś zmienić strefę czasową PHP lub MySql ?

#13 Miłosz

    Weteran WHT

  • Moderatorzy
  • PipPipPipPipPipPipPipPip
  • 2471 postów
  • Skąd:Bydgoszcz/Tuchola
  • Firma:Sys-Com
  • Imię:Miłosz
  • Nazwisko:Oller

Napisany 18 maj 2010 - 21:47

w systemie lub php.ini
Miłosz GG: 3312894 JID: ollerm@jabber.org
Konfiguracja i administracja serwerami dedykowanymi/RPS/VPS - Faktura VAT
Idealny hosting | Domeny | Hosting dla Firm

#14 Hekko.pl

    Weteran WHT

  • Firma Bronze
  • PipPipPipPipPipPipPipPip
  • 1273 postów
  • Skąd:Gdynia
  • Firma:HEKKONET
  • Imię:Damian
  • Nazwisko:Gałązka

Napisany 18 maj 2010 - 23:05

Zobacz postSanKen, o 18 maj 2010 - 21:21, powiedział:

Takie małe OT. Można gdzieś zmienić strefę czasową PHP lub MySql ?

php.ini : date.timezone=
a tu lista: http://php.net/manual/en/timezones.php

#15 SanKen

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 264 postów
  • Skąd:/var/logs
  • Imię:Matthew

Napisany 19 maj 2010 - 00:06

I wpisać date.timezone=Europe/Warsaw
I restart apache ?

#16 Miłosz

    Weteran WHT

  • Moderatorzy
  • PipPipPipPipPipPipPipPip
  • 2471 postów
  • Skąd:Bydgoszcz/Tuchola
  • Firma:Sys-Com
  • Imię:Miłosz
  • Nazwisko:Oller

Napisany 19 maj 2010 - 00:09

dokładnie ;)
Miłosz GG: 3312894 JID: ollerm@jabber.org
Konfiguracja i administracja serwerami dedykowanymi/RPS/VPS - Faktura VAT
Idealny hosting | Domeny | Hosting dla Firm

#17 SanKen

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 264 postów
  • Skąd:/var/logs
  • Imię:Matthew

Napisany 19 maj 2010 - 09:56

Dobra wina była na serwerze matce. A teraz pytanie też do mysql jest może skrypt(php) który pokazuje ile waży dana baza ? Coś jak DA pokazuje w "Zarządzaniem bazami mysql"

#18 Miłosz

    Weteran WHT

  • Moderatorzy
  • PipPipPipPipPipPipPipPip
  • 2471 postów
  • Skąd:Bydgoszcz/Tuchola
  • Firma:Sys-Com
  • Imię:Miłosz
  • Nazwisko:Oller

Napisany 19 maj 2010 - 14:34

select table_schema "Database", 
sum( data_length + index_length ) / 1024 / 1024 "Size (MB)", 
sum( data_free )/ 1024 / 1024 "Free (MB)" 
from information_schema.tables 
group by table_schema;


Powinno działać ;)
Miłosz GG: 3312894 JID: ollerm@jabber.org
Konfiguracja i administracja serwerami dedykowanymi/RPS/VPS - Faktura VAT
Idealny hosting | Domeny | Hosting dla Firm

#19 SanKen

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 264 postów
  • Skąd:/var/logs
  • Imię:Matthew

Napisany 19 maj 2010 - 15:17

A jak to odpalić. Chciałem coś z php a to wygląda jak BMW xD nic z tego nie wiem. (Proszę o wytłumaczenie jak dla początkującego.)

#20 Miłosz

    Weteran WHT

  • Moderatorzy
  • PipPipPipPipPipPipPipPip
  • 2471 postów
  • Skąd:Bydgoszcz/Tuchola
  • Firma:Sys-Com
  • Imię:Miłosz
  • Nazwisko:Oller

Napisany 19 maj 2010 - 15:26

to jest zwykłe zapytanie sql :) więc chyba wiesz jak to użyć w php? ;)
Miłosz GG: 3312894 JID: ollerm@jabber.org
Konfiguracja i administracja serwerami dedykowanymi/RPS/VPS - Faktura VAT
Idealny hosting | Domeny | Hosting dla Firm





1 Użytkowników czyta ten temat

0 użytkowników, 1 gości, 0 anonimowych użytkowników