beállítás mysql
Az alap konfiguráció MySQL használatával /etc/my.cnf fájl vagy /etc/mysql/my.cnf
Megadása karakterkészletek és egyeztetése
A [mysqld] add sorokat:
karakterkészlet-server = utf8
egybevetés-szerver = utf8_general_ci
init-connect = "SET NAMES utf8"
- karakterkészlet-szerver - a kódolást az egész szerver;
- egybevetés-szerver - a sorrendben jelek és a sorok alapján ábécésorrendben ekvivalencia osztályokba;
- init-csatlakozáshoz - string végre minden ügyfél számára, amely összekapcsolja.
Mennyiségét korlátozzák időtúllépés és források vegyületek
Számának növelése nyitott fájlok
A legtöbb alapértelmezett Linix-rendszer határa nyitott fájlleírók épülete 1024, mert ez nem elég.
Ellenőrizze az aktuális beállításokat:
Végezzük el a kívánt határok /etc/security/limits.conf
Dinamikusan változik a jelenlegi határok:
Fogjuk ellenőrizni a soft limit:
A jelenlegi határértékek MySQL ellenőrizze SQL-lekérdezés:
SHOW VARIABLES LIKE '% open_files%'
Optimalizálása MySQL MyISAM
Optimalizálása MySQL paraméterek jelentősen növeli a teljesítményt a MyISAM.
A főbb paraméterek key_buffer_size (puffer dolgozni kulcsok és indexek) és sort_buffer (puffer válogatás).
key_buffer_size = 64M
sort_buffer_size = 32M
A jelenlétében 16 GB memóriát vagy több ajánlott, hogy növelje key_buffer_size a 128M-256M. Ha nem használja a MyISAM táblák, ajánlott telepíteni key_buffer_size mérete 32MB tárolására indexek ideiglenes táblák.
A lekérdezési gyorsítótár van megadva query_cache_size opciót. korlátozását a tárolt elemet query_cache_limit. cache nyílt táblázatok table_open_cache.
table_open_cache = 2048
query_cache_limit = 2M
query_cache_size = 128M
query_cache_type = 1
thread_cache_size = 16
max_heap_table_size = 128M
tmp_table_size = 128M
Vándorolnak MySQL ideiglenes fájlokat a memóriában
Ellenőrizze a rendelkezésre álló / dev / shm:
Semelyik / dev / shm tmpfs defaults, méret = 1G 0 0
Ha egy változás, akkor újra össze kell szerelni:
mount -o remount / dev / shm
A konfigurációs fájl meghatározza:
Ha használt Apparmor. majd kihasználni path (/ dev / shm vagy / run / mysql) a konfigurációs fájlban /etc/apparmor.d/usr.sbin.mysqld, például:
szolgáltatás apparmor újraindítás
Optimalizálása MySQL InnoDB
innodb_file_per_table = 1
table_open_cache = 4096
innodb_open_files = 4096
Ha csak egy része a InnoDB opciók beállítására lesz szükség:
key_buffer_size = 32M
max_allowed_packet = 1M
sort_buffer_size = 32M
read_buffer_size = 256K
read_rnd_buffer_size = 1M
thread_stack = 128K
query_cache_limit = 1M
query_cache_size = 0
query_cache_type = 1
thread_cache_size = 32
max_heap_table_size = 128M
tmp_table_size = 128M
Felhívjuk figyelmét, hogy ha dolgozik, InnoDB tiltjuk query_cache_size beállítás értéke 0, kiküszöböli a szükségtelen lépéseket dolgozik a cache, ami különösen fontos, ha dolgozik, nagy mennyiségű adat.
Fontos beállítások használata esetén MySQL InnoDB van innodb_buffer_pool_size. Megállapítást nyert az az elv „minél több, annál jobb.” Javasoljuk, hogy kiosztani 70-80% RAM szerver alatt innodb_buffer_pool_size. Ne felejtsd el használni a memória számítás Apache és további szoftverek elkerülése érdekében megrekedt rendszer csere. A szerver van beállítva, hogy 16 GB-os 10-12G tartomány és osszuk négy részre, egy szerver 32GB 20-22G beállítási tartományban, és osszuk 8 részből áll:
innodb_buffer_pool_size = 10G
innodb_buffer_pool_instances = 4
A memória mérete kiosztott tárolására InnoDB különböző belső szerkezeteket telepítve 16M-32M
Telepítése nagy méretű innodb_log_file_size növelheti a teljesítményt, a felfutási idő adat-helyreállítást.
innodb_log_file_size = 128M
innodb_log_buffer_size = 16M
Amikor beállítása 2 a puffer leöblítése a lemezre, de csak a cache az operációs rendszer. Az érték 0 és növelik a teljesítményt, de előfordulhat, hogy elveszíti az adatok, amikor az utolsó vészleállításáról mysql-server.
A több input / output áramfájlokat meghatározott InnoDB innodb_file_io_threads ezt. ez a paraméter beállítása általában 4 vagy 8.
A MySQL 5.5 verziója van osztva 2 lehetőség:
innodb_read_io_threads = 8
innodb_write_io_threads = 8
Ahhoz, hogy gyorsítsák fel a munkát INFORMATION_SCHEMA, SHOW TABLE STATUS vagy SHOW INDEX disable frissítése statisztikák ilyen műveletek végrehajtásához, a MySQL verzió 5.6.6 innodb_stats_on_metadata alapértelmezés szerint letiltva:
Alkalmazása után a módosításokat, indítsa újra a MySQL:
szolgáltatás mysqld újraindítás