|
|
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
BossBoxФайл настроек для MySQL я накидал бегло (просто занизил все значения), если может кто помочь, накидайте пожалуйста какие параметры лучше прописать (хотя бы основные)Лучше всего, оставить дефолтовые настройки. Если конфига нет после установки - и не надо его делать. Для многих и многих случаев это самый простой способ настройки СУБД на первое время, особенно, если нет ясного понимания влияния каждого из вносимых в файл параметров. Будут проблемы - сделаете правки для устранения конкретных проблем. У меня были случаи, когда руками писаный конфиг отсутствовал на сервере - и никто этого не замечал годами. Для Вашего случая, пожалуй, можно только skip-innodb оставить, если этот движок не нужен и skip-networking , если сетевые подключения не нужны. А так в конфиге ляпы, конечно... port = 3306 - указывает номер порта для сетевых подключений, а skip-networking запрещает сетевые подключения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 10:59:10 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
miksoftЛибо кнопконажимательно в phpMyAdmin (деталей не подскажу), либо командой CREATE INDEX idx_host ON upd_wotspeak_ru (host) Данное действие, нужно выполнять каждый раз при создании новой таблицы? Данные соответственно которые будут добавлять в таблицу автоматически будут с данным индексом? miksoftЧто нет атаки, не пришел краулер или еще какая зараза?Это к тому, что если выросло количество внешних запросов, то неудивительно, что сервер перегружен, а MySQL просто оказался узким местом. Возможно, есть смысл ввести какой-то контроль или ограничения на уровне файерволла или веб-сервера. Например, мне пришлось запретить в файерволле ip-адреса некоторых ботов, которые имеют наглость присылать десятки http-запросов в секунду. А иногда адреса вашего сервера публикуют на популярном сайте и количество посещений резко возрастает. Т.е. такого рода случаи тоже нельзя упускать из рассмотрения.[/quot] Я отвечал - нет нету, сервер предназначен для статистика, PHPmyAdmin показал запросов в секунду: ø за час: 139,587 ø за минуту: 2,326 ø в секунду: 39 Помимо этого в начале, порядок действий от 1 запроса такой: 1. Загрузка файла с сервера (15-30кб) 2. Обращение к файлу PHP на сервере > PHP обращается к MYSQL >> Запись/обновление данных в таблице, где есть этот IP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 11:39:47 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
vkleBossBoxФайл настроек для MySQL я накидал бегло (просто занизил все значения), если может кто помочь, накидайте пожалуйста какие параметры лучше прописать (хотя бы основные)Лучше всего, оставить дефолтовые настройки. Если конфига нет после установки - и не надо его делать. Для многих и многих случаев это самый простой способ настройки СУБД на первое время, особенно, если нет ясного понимания влияния каждого из вносимых в файл параметров. Будут проблемы - сделаете правки для устранения конкретных проблем. У меня были случаи, когда руками писаный конфиг отсутствовал на сервере - и никто этого не замечал годами. Для Вашего случая, пожалуй, можно только skip-innodb оставить, если этот движок не нужен и skip-networking , если сетевые подключения не нужны. А так в конфиге ляпы, конечно... port = 3306 - указывает номер порта для сетевых подключений, а skip-networking запрещает сетевые подключения. По по поводу, в конфиге несколько секций [client] [mysqld] [mysqldump] [mysql] [myisamchk] В myisamchk прописано: key_cache_size = 2M key_buffer_size = 2M sort_buffer_size = 2M Они применяются к mysqld, или нужно их туда записать а из myisamchk удалить ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 11:42:01 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
BossBoxmiksoftЛибо кнопконажимательно в phpMyAdmin (деталей не подскажу), либо командой CREATE INDEX idx_host ON upd_wotspeak_ru (host) Данное действие, нужно выполнять каждый раз при создании новой таблицы?Это нужно сделать один раз. Для новых таблиц могут потребоваться или не потребоваться другие индексы. Зависит от запросов и фактических даных, которые будут лежать в этих таблицах. BossBoxПо по поводу, в конфиге несколько секцийСейчас речь идет о секции [mysqld]. Именно в ней задаются настройки для сервера. Остальные секции играют роль для соответствующих утилит. BossBox2. Обращение к файлу PHP на сервере > PHP обращается к MYSQL >> Запись/обновление данных в таблице, где есть этот IPПодозреваю, что этот блок можно заменить одной командой LOAD DATA INFILE. Или двумя - загрузкой в промежуточную таблицу и вставкой в рабочие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 11:52:51 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
У меня в PHP файле такой код: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. Я тут попробовал, чтобы не ждать CPU100%, скопировал данный участок 3 раза, тут действие то выполняется простое соеденится и проверить и обновить, но MySQL сразу почему выдает сразу CPU 100%, кажется что код который выше (продублированный 3 раза) написан не оптимально.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 12:04:11 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
BossBox Код: php 1. 2. 3. 4. Здесь ветки if и else местами не перепутаны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 12:28:38 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
BossBoxmiksoftЛибо кнопконажимательно в phpMyAdmin (деталей не подскажу), либо командой CREATE INDEX idx_host ON upd_wotspeak_ru (host) Данное действие, нужно выполнять каждый раз при создании новой таблицы? BossBoxУ меня в PHP файле такой код:У Вас таблицы однотипной структуры создаются скриптом. Так что, для новых таблиц достаточно один раз поправить этот скрипт. Для существующих - просто добавить индекс. Ещё момент. Дату, конечно, можно хранить в текстовом поле. В смысле, она туда умещается. Если хотите хранить именно в текстовом, то есть смысл сменить тип поля на char с фиксированной длиной - в данном конкретном случае длина строки постоянна. Однако, для хранения даты/времени в мускуле имеется специально для этого предназначенный тип поля. IP-адреса можно хранить в виде целого (собственно, адреса IPv4 - это и есть 32-битное целое). При таком подходе появляется необходимость дополнительной обработки данных при записи/чтении, но по компактности хранения и по производительности оно будет в разы лучше. И ещё, касаемо безопасности. Значения $_GET["base"] и $_GET["type"] в данном коде попадают напрямую в запрос без каких-то проверок на допустимость. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 12:49:39 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
Ещё пара моментов ао коду. Вместо "CREATE TABLE" с последующей проверкой на ошибку 1050 можно использовать "CREATE TABLE IF NOT EXISTS". Соответственно, проверка упрощается. И ещё одна ошибка. Если таблицу создать не удалось, то дальнейшие обращения к этой несуществующей таблице попросту бесполезны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 13:05:56 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
Я бы еще предложил сделать одну таблицу, а $base сделать в ней полем. Тогда понадобится индекс (base,host). Но не понадобится создавать таблицу на лету, что не такая уж дешевая операция. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 13:14:53 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
vkleBossBoxпропущено... Данное действие, нужно выполнять каждый раз при создании новой таблицы? BossBoxУ меня в PHP файле такой код:У Вас таблицы однотипной структуры создаются скриптом. Так что, для новых таблиц достаточно один раз поправить этот скрипт. Для существующих - просто добавить индекс. Меня просто терзают сомнения, в PHP то нужно что-то менять чтобы задействовать индексы при запросе к БД? Или после того как добавлю индексы к таблице, при запросе моего PHP к таблице для поиска ключей, MySQL сама все сделает (будет использовать)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 13:58:01 |
|
||
|
Непонятная нагрузка на CPU 100% после запуска MYSQL
|
|||
|---|---|---|---|
|
#18+
BossBoxИли после того как добавлю индексы к таблице, при запросе моего PHP к таблице для поиска ключей, MySQL сама все сделает (будет использовать)?Обычно да. В редких сложных случаях нужно в запросе добавить хинт для задействования индекса. Здесь же случай простой, думаю, индекс сам подхватится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2015, 14:05:52 |
|
||
|
|

start [/forum/topic.php?fid=47&gotonew=1&tid=1833274]: |
0ms |
get settings: |
6ms |
get forum list: |
21ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
9ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 203ms |
| total: | 343ms |

| 0 / 0 |
