Szukałem najlepszych praktyk i zalecanych ustawień konfiguracji do konfigurowania serwera MySQL do obsługi aplikacji Magento2.
Szukałem najlepszych praktyk i zalecanych ustawień konfiguracji do konfigurowania serwera MySQL do obsługi aplikacji Magento2.
Odpowiedzi:
Poniżej kilka głównych konfiguracji zalecanych przez Magento2 MySQL.
Aby uzyskać więcej informacji, zapoznaj się z tym linkiem devdocs - http://devdocs.magento.com/guides/v2.0/install-gde/prereq/mysql.html
Devdocs wymienił wszystkie zalecane konfiguracje.
Nie ma idealnej konfiguracji dla każdego projektu, ponieważ zależy to od konfiguracji, liczby katalogów, stron internetowych itp.
Idealnie, MySQL powinien być w stanie przechowywać bazę danych magento w pamięci RAM i nie zamieniać w swap.
Jedną z najważniejszych konfiguracji dla wydajności jest innodb-bufor-pula-rozmiar. Zobacz szczegóły w dokumentacji MySQL: https://dev.mysql.com/doc/refman/5.5/en/innodb-buffer-pool.html
Jako przykład używam tej konfiguracji w moich projektach:
[mysqld]
## After edit config you have to remove log files and restart mysql server
## because after changing innodb-log-file-size you should recreate ib_logfiles
## Stop MySQL server
## rm /data/dir/ib_logfile*
## Run MySQL server
##Table open cache under MacOS and MySQL 5.6 should be 250.
##Otherwise you will get error MySQL server has gone away
##table-open-cache = 250
table_open_cache = 4096
## Cache
table_definition_cache = 4096
thread_cache_size = 256
query_cache_size = 64M
query_cache_type = 1
## Per-thread Buffers
sort_buffer_size = 16M
## Temp Tables
max_heap_table_size = 512M
tmp_table_size = 512M
## Networking
interactive_timeout = 3600
max_connections = 400
max_connect_errors = 1000000
max_allowed_packet = 512M
skip_name_resolve
skip_secure_auth
wait_timeout = 28800
## MyISAM
key_buffer_size = 256M
#myisam_recover = FORCE,BACKUP
myisam_sort_buffer_size = 128M
## InnoDB
innodb_buffer_pool_size = 2G
innodb_log_file_size = 256M
innodb_thread_concurrency = 18
innodb_flush_log_at_trx_commit = 2
##Fastest
##innodb_flush_log_at_trx_commit = 0
Wyświetl i pobierz najnowszą wersję: https://gist.github.com/yvoronoy/a705387c1c995fb071f656bdb951c714
tunning-primer.sh
launchpad.net/mysql-tuning-primer/trunk/1.6-r1/+download/... & mysqltuner.pl
mysqltuner.pl tych skryptów używać MySQL zmienne w czasie wykonywania więc mający co najmniej 24 godzin w minimum przed użyciem albo / albo stosując sugestie.
Serwery sieciowe
Apache 2.2 lub 2.4
Ponadto moduł apache mod_rewrite musi być włączony.
mod_rewrite umożliwia serwerowi przepisywanie adresów URL. Aby uzyskać więcej
informacji, zobacz naszą dokumentację Apache.
nginx 1.8 (lub najnowsza wersja mainline)
Baza danych
PHP
5.6.x
5.5.x, gdzie x wynosi 22 lub więcej
7.0.2, 7.0.6–7.0.x
Znany jest problem PHP 7.0.5, który wpływa na nasz kompilator kodu; aby uniknąć tego problemu, nie używaj PHP 7.0.5.
Niewspierany:
Dokumentacja PHP: CentOS, Ubuntu
Wymagane rozszerzenia PHP:
bc-matematyka
kędzior
Tylko PHP 7:
json
iconv
Możesz uzyskać więcej informacji z: Wymagania dotyczące stosu technologii Magento 2.0.x.