Настройка MySQL под 1С: Bitrix. Bitrix оптимизация mysql
Оптимизация работы mysql — 1С-Битрикс
Нашел хороший и быстрый способ оптимизации работы баз данных mysql.
Есть очень хороший скрипт на перл, который позволяет узнать, что вам нужно оптимизировать в настройках, дабы у вас все было очень круто.
Закачать его можно вот так:
wget http://mysqltuner.pl/
Затем запускаем
perl mysqltuner.pl
Скрипт запросит рут-доступ к вашему серверу БД. Дайте ему то, что он просит.
Вот выдача скрипта с моего компа:
:~$ perl mysqltuner.pl
>> MySQLTuner 1.0.1 — Major Hayden <[email protected]>>> Bug reports, feature requests, and downloads at http://mysqltuner.com/>> Run with ‘—help’ for additional options and output filteringPlease enter your MySQL administrative login: rootPlease enter your MySQL administrative password:
——— General Statistics —————————————————[—] Skipped version check for MySQLTuner script[OK] Currently running supported MySQL version 5.1.37-1ubuntu5.1[OK] Operating on 32-bit architecture with less than 2GB RAM
——— Storage Engine Statistics ——————————————-[—] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster[—] Data in MyISAM tables: 2M (Tables: 537)[!!] InnoDB is enabled but isn’t being used[!!] Total fragmented tables: 16
——— Performance Metrics ————————————————-[—] Up for: 5h 55m 1s (1K q [0.081 qps], 577 conn, TX: 144K, RX: 106K)[—] Reads / Writes: 100% / 0%[—] Total buffers: 58.0M global + 2.7M per thread (151 max threads)[OK] Maximum possible memory usage: 463.8M (24% of installed RAM)[OK] Slow queries: 0% (0/1K)[OK] Highest usage of available connections: 1% (2/151)[OK] Key buffer size / total MyISAM indexes: 16.0M/2.5M[!!] Query cache efficiency: 0.0% (0 cached / 1K selects)[OK] Query cache prunes per day: 0[OK] Temporary tables created on disk: 24% (48 on disk / 200 total)[OK] Thread cache hit rate: 99% (2 created / 577 connections)[!!] Table cache hit rate: 1% (64 open / 3K opened)[OK] Open file limit used: 12% (128/1K)[OK] Table locks acquired immediately: 100% (579 immediate / 579 locks)
——— Recommendations ——————————————————General recommendations:Add skip-innodb to MySQL configuration to disable InnoDBRun OPTIMIZE TABLE to defragment tables for better performanceMySQL started within last 24 hours — recommendations may be inaccurateEnable the slow query log to troubleshoot bad queriesIncrease table_cache gradually to avoid file descriptor limitsVariables to adjust:query_cache_limit (> 1M, or use smaller result sets)table_cache (> 64)
Удачной оптимизации товарищи.
blog.sokov.org
Настройка tmp_table_size MySQL (CMS Bitrix)? — Toster.ru
Всем Привет! Есть, сайт на Битриксе, веб-сервер Nginx.В общем сложность с настройкой tmp_table_size и max_heap_table_size
Вот что пишет битрикс:Временные таблицы (диск) = 37.65%.Процент временных таблиц потребовавших создание на диске (Created_tmp_disk_tables / (Created_tmp_tables + Created_tmp_disk_tables)). Процент более 30% и требуется увеличить параметры tmp_table_size (текущее значение: 2 ГБ) и max_heap_table_size (текущее значение: 2 ГБ). Убедитесь, что значения этих параметров равны. Так же возможно требуется сократить количество SELECT DISTINCT запросов без LIMIT.
Изменял значения от 128мб до 2гб, процент коррелируется от 43% до 37%-bash-4.1# mysqltuner
Результат>> MySQLTuner 1.1.1 - Major Hayden <[email protected]> >> Bug reports, feature requests, and downloads at http://mysqltuner.com/ >> Run with '--help' for additional options and output filtering Please enter your MySQL administrative login: root Please enter your MySQL administrative password: -------- General Statistics -------------------------------------------------- [--] Skipped version check for MySQLTuner script [OK] Currently running supported MySQL version 5.1.73 [OK] Operating on 64-bit architecture -------- Storage Engine Statistics ------------------------------------------- [--] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster [--] Data in MyISAM tables: 1G (Tables: 729) [--] Data in InnoDB tables: 1G (Tables: 5005) [!!] Total fragmented tables: 2808 -------- Security Recommendations ------------------------------------------- [OK] All database users have passwords assigned -------- Performance Metrics ------------------------------------------------- [--] Up for: 2h 31m 15s (931K q [102.613 qps], 25K conn, TX: 3B, RX: 419M) [--] Reads / Writes: 54% / 46% [--] Total buffers: 8.8G global + 48.2M per thread (151 max threads) [OK] Maximum possible memory usage: 15.9G (50% of installed RAM) [OK] Slow queries: 0% (15/931K) [OK] Highest usage of available connections: 15% (24/151) [OK] Key buffer size / total MyISAM indexes: 2.0G/168.0M [OK] Key buffer hit rate: 100.0% (4M cached / 11 reads) [OK] Query cache efficiency: 73.1% (474K cached / 649K selects) [OK] Query cache prunes per day: 0 [OK] Sorts requiring temporary tables: 0% (120 temp sorts / 32K sorts) [!!] Joins performed without indexes: 1371 [!!] Temporary tables created on disk: 37% (14K on disk / 38K total) [OK] Thread cache hit rate: 99% (24 created / 25K connections) [OK] Table cache hit rate: 99% (5K open / 5K opened) [OK] Open file limit used: 7% (1K/20K) [OK] Table locks acquired immediately: 100% (485K immediate / 485K locks) [OK] InnoDB data size / buffer pool: 2.0G/4.0G -------- Recommendations ----------------------------------------------------- General recommendations: Run OPTIMIZE TABLE to defragment tables for better performance MySQL started within last 24 hours - recommendations may be inaccurate Enable the slow query log to troubleshoot bad queries Adjust your join queries to always utilize indexes Temporary table size is already large - reduce result set size Reduce your SELECT DISTINCT queries without LIMIT clauses Variables to adjust: join_buffer_size (> 16.0M, or always use indexes with joins) Файл my.cnfспойлер# Example MySQL config file for small systems. # # This is for a system with little memory (<= 64M) where MySQL is only used # from time to time and it's important that the mysqld daemon # doesn't use much resources. # # MySQL programs look for option files in a set of # locations which depend on the deployment platform. # You can copy this option file to one of those # locations. For information about these locations, see: # http://dev.mysql.com/doc/mysql/en/option-files.html # # In this file, you can use all long options that a program supports. # If you want to know which options a program supports, run the program # with the "--help" option. # The following options will be passed to all MySQL clients [client] #password = your_password port = 3306 socket = /var/lib/mysql/mysql.sock # Here follows entries for some specific programs # The MySQL server [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock skip-locking tmpdir = /dev/shm key_buffer_size = 4M max_allowed_packet = 16M table_open_cache = 256 sort_buffer_size = 64K read_buffer_size = 256K read_rnd_buffer_size = 256K net_buffer_length = 2K thread_stack = 192K query_cache_size = 2M thread_cache_size = 8 tmp_table_size = 1024M max_heap_table_size = 1024M transaction-isolation = READ-COMMITTED # Don't listen on a TCP/IP port at all. This can be a security enhancement, # if all processes that need to connect to mysqld run on the same host. # All interaction with mysqld must be made via Unix sockets or named pipes. # Note that using this option without enabling named pipes on Windows # (using the "enable-named-pipe" option) will render mysqld useless! # #skip-networking server-id = 1 # Uncomment the following if you want to log updates #log-bin=mysql-bin # binary logging format - mixed recommended #binlog_format=mixed # Uncomment the following if you are using InnoDB tables #innodb_data_home_dir = /var/lib/mysql #innodb_data_file_path = ibdata1:10M:autoextend #innodb_log_group_home_dir = /var/lib/mysql # You can set .._buffer_pool_size up to 50 - 80 % # of RAM but beware of setting memory usage too high innodb_buffer_pool_size = 100M innodb_additional_mem_pool_size = 20M # Set .._log_file_size to 25 % of buffer pool size #innodb_log_file_size = 5M #innodb_log_buffer_size = 8M innodb_flush_log_at_trx_commit = 1 #innodb_lock_wait_timeout = 50 innodb_flush_method = O_DIRECT max_allowed_packet=64M interactive_timeout=120 wait_timeout=120 key_buffer_size=2048M sort_buffer_size=8M join_buffer_size=8M read_buffer_size=8M read_rnd_buffer_size=16M query_cache_size=128M query_cache_limit=128M query_cache_wlock_invalidate low_priority_updates max_tmp_tables=64 tmp_table_size=2048M max_heap_table_size=2048M bulk_insert_buffer_size=64M preload_buffer_size=4M memlock myisam_use_mmap innodb_additional_mem_pool_size=512M innodb_buffer_pool_size=4096M innodb_log_buffer_size=128M innodb_flush_log_at_trx_commit=2 innodb_flush_method=O_DIRECT innodb_file_per_table innodb_doublewrite=0 table_definition_cache = 4096 thread_cache_size = 64 table_open_cache = 10240 join_buffer_size = 16M [mysqldump] quick max_allowed_packet = 16M [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates [myisamchk] key_buffer_size = 8M sort_buffer_size = 8M [mysqlhotcopy] interactive-timeouttoster.ru
сколько стоит услуга Bitrix настройка базы данных у фрилансеров
Благодаря быстродействию баз данных повышается общая производительность проекта на 1С: Bitrix. Настройка базы данных MySQL для Битрикс может также позволить увеличить скорость загрузки страницы сайта. Именно скорость загрузки влияет на впечатления пользователя о сайте. Если страница загружается медленно, то посетитель может просто закрыть вкладку своего браузера, так и не дождавшись загрузки страницы. Выходит, конфигурация базы данных MySQL для 1С: Bitrix – это значимые условия, которые могут повлиять и на посещаемость.
Как настроить MySQL?
Настройка MySQL под Bitrix начинается с установки типа таблиц. Они должны быть типа InnoDB. Чтобы проверить это, следует провести следующие действия:
- Зайти в административную панель 1С: Bitrix;
- Выбрать настройку, инструменты и «SQL запрос»;
- Введите команду «SHOW TABLE STATUS».
Если вы сделали все верно, то обратите внимание на второй столбец. Именно там будет отображаться тип таблиц.
Если тип таблиц MyISAM, то изменения конфигурации MySQL для 1С: Битрикс будут выглядеть так:
- Выберите «Настройки», зайди в «Производительность» и кликните на параметр «Таблицы»;
- Найдите строку «Для всех»;
- Выпадающий список должен содержать «Преобразовать в InnoDB».
Настройка MySQL под 1С: Bitrix включает и другие преобразования. Для изменения конфигурации следует найти файл etc/init.d/mysql. В нем есть параметр CONF. Именно в нем меняется настройка MySQL. Если настройка MySQL для Битрикс изменилась, то требуется перезапуск сервера, иначе изменения не смогут вступить в силу. Чтобы посмотреть все параметры, то следует ввести команду «mysqladmin variables –p(root пароль)».
Какая настройка MySQL для Bitrix является наиболее продуктивной? На этот вопрос поможет ответить только опыт и экспериментирование. Также вам поможет «Монитор производительности». Чтобы его вызвать, нужно выполнить такие действия:
- Выберите «Настройки»;
- Зайдите в «Производительность»;
- Найдите «Сервер БД».
Изменение конфигурации можно проводить как самостоятельно, так и используя услуги специалиста.
Поиск специалиста с биржей Юду
Найти хорошего специалиста в области компьютерных технологий бывает нелегко. Особенно, когда требуется специалист по работе с сервером. Однако заказать услуги по настройке и оптимизации сервера вы можете на онлайн-бирже Юду. Эта платформа объединяет специалистов компьютерной сферы. Они предоставляют различные услуги, которые вы можете легко заказать. К ним относится не только настройка MySQL, но и работа с другим ПО.
На сайте Юду зарегистрированы специалисты, которые сами подают заявку на вашу работу. Вам остается лишь выбрать понравившегося кандидата. При этом цену и срок вы назначаете сами. Если мастер подал заявку на ваш проект, значит, он согласен с вашими условиями. В итоге, в выигрыше остаются как заказчик, так и исполнитель. С биржей Юду поиск специалиста становится легким процессом!
freelance.youdo.com