Очень часто начала ломаться статистика с крашем таблиц. Как можно сделать что бы они чинились автоматически или (еще лучше) не ломались. Логи скрипта чисты. Есть идея сделать выполнение через CronTab такой вещи Спойлер REPAIR TABLE `geoLiteCity_Blocks`, `geoLiteCity_Location`, `hlstats_Actions`, `hlstats_Awards`, `hlstats_Clans`, `hlstats_ClanTags`, `hlstats_Countries`, `hlstats_Events_Admin`, `hlstats_Events_ChangeName`, `hlstats_Events_ChangeRole`, `hlstats_Events_ChangeTeam`, `hlstats_Events_Chat`, `hlstats_Events_Connects`, `hlstats_Events_Disconnects`, `hlstats_Events_Entries`, `hlstats_Events_Frags`, `hlstats_Events_Latency`, `hlstats_Events_PlayerActions`, `hlstats_Events_PlayerPlayerActions`, `hlstats_Events_Rcon`, `hlstats_Events_Statsme`, `hlstats_Events_Statsme2`, `hlstats_Events_StatsmeLatency`, `hlstats_Events_StatsmeTime`, `hlstats_Events_Suicides`, `hlstats_Events_TeamBonuses`, `hlstats_Events_Teamkills`, `hlstats_Games`, `hlstats_Games_Defaults`, `hlstats_Games_Supported`, `hlstats_Heatmap_Config`, `hlstats_HostGroups`, `hlstats_Livestats`, `hlstats_Maps_Counts`, `hlstats_Mods_Defaults`, `hlstats_Mods_Supported`, `hlstats_Options`, `hlstats_Options_Choices`, `hlstats_PlayerNames`, `hlstats_Players`, `hlstats_Players_Awards`, `hlstats_Players_History`, `hlstats_Players_Ribbons`, `hlstats_PlayerUniqueIds`, `hlstats_Ranks`, `hlstats_Ribbons`, `hlstats_Roles`, `hlstats_Servers`, `hlstats_Servers_Config`, `hlstats_Servers_Config_Default`, `hlstats_Servers_VoiceComm`, `hlstats_server_load`, `hlstats_Teams`, `hlstats_Trend`, `hlstats_Users`, `hlstats_Weapons`
Пишем простенький php скрипт с нужным запросом, и ставим в задачу выполнение этого скрипта по нужному времени. Если никто не ответит раньше или не решишь сам, поищу скрипт, был у меня где то готовый. Добавлено через 3 минуты PHP: <?php $mysqli = @new mysqli('host', 'user', 'pass', 'table'); if (mysqli_connect_errno()) { echo "Подключение невозможно: ".mysqli_connect_error(); } $mysqli->query('REPAIR TABLE `geoLiteCity_Blocks`, `geoLiteCity_Location`, `hlstats_Actions`, `hlstats_Awards`, `hlstats_Clans`, `hlstats_ClanTags`, `hlstats_Countries`, `hlstats_Events_Admin`, `hlstats_Events_ChangeName`, `hlstats_Events_ChangeRole`, `hlstats_Events_ChangeTeam`, `hlstats_Events_Chat`, `hlstats_Events_Connects`, `hlstats_Events_Disconnects`, `hlstats_Events_Entries`, `hlstats_Events_Frags`, `hlstats_Events_Latency`, `hlstats_Events_PlayerActions`, `hlstats_Events_PlayerPlayerActions`, `hlstats_Events_Rcon`, `hlstats_Events_Statsme`, `hlstats_Events_Statsme2`, `hlstats_Events_StatsmeLatency`, `hlstats_Events_StatsmeTime`, `hlstats_Events_Suicides`, `hlstats_Events_TeamBonuses`, `hlstats_Events_Teamkills`, `hlstats_Games`, `hlstats_Games_Defaults`, `hlstats_Games_Supported`, `hlstats_Heatmap_Config`, `hlstats_HostGroups`, `hlstats_Livestats`, `hlstats_Maps_Counts`, `hlstats_Mods_Defaults`, `hlstats_Mods_Supported`, `hlstats_Options`, `hlstats_Options_Choices`, `hlstats_PlayerNames`, `hlstats_Players`, `hlstats_Players_Awards`, `hlstats_Players_History`, `hlstats_Players_Ribbons`, `hlstats_PlayerUniqueIds`, `hlstats_Ranks`, `hlstats_Ribbons`, `hlstats_Roles`, `hlstats_Servers`, `hlstats_Servers_Config`, `hlstats_Servers_Config_Default`, `hlstats_Servers_VoiceComm`, `hlstats_server_load`, `hlstats_Teams`, `hlstats_Trend`, `hlstats_Users`, `hlstats_Weapons`'); echo "Готово!"; $mysqli->close(); ?>
А, я то подумал что есть более оптимальное решение) Сейчас добавил в крон после перезапуска машины и каждую ночь, вроде крашев уже не видно
Оптимальное решение.хм..я бы искал причину таких падений. Переустановил бы для начала базу\стату (естественно с бекапом)
Если есть доступ к шеллу, тогда то же самое, только на баше: Для Debian/Ubuntu: PHP: mysqlcheck --defaults-file=/etc/mysql/debian.cnf --auto-repair hlstats_dbname Для всех дистров (общий синтаксис): PHP: mysqlcheck --user=username --password=password --auto-repair hlstats_dbname Добавлено через 2 минуты Тут косяк в самом синтаксисе запросов и структуре базы. Увы, стата писалась местами на коленке. При большом количестве серверов и игроков, база вот так вот регулярно ломается....
Спасибо, работает Спойлер Warning: Using a password on the command line interface can be insecure. v34_hlstatsx.geoLiteCity_Blocks OK v34_hlstatsx.geoLiteCity_Location OK v34_hlstatsx.hlstats_Actions warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_AddonsOptions OK v34_hlstatsx.hlstats_Awards warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_ClanTags OK v34_hlstatsx.hlstats_Clans warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Countries OK v34_hlstatsx.hlstats_Events_Admin OK v34_hlstatsx.hlstats_Events_ChangeName warning : 1 client is using or hasn't closed the table properly status : OK v34_hlstatsx.hlstats_Events_ChangeRole OK v34_hlstatsx.hlstats_Events_ChangeTeam warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_Chat warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_Connects warning : 3 clients are using or haven't closed the table properly error : Record-count is not ok; is 52129 Should be: 52130 warning : Found 56 deleted space. Should be 0 warning : Found 1 deleted blocks Should be: 0 error : Corrupt v34_hlstatsx.hlstats_Events_Disconnects warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_Entries warning : 3 clients are using or haven't closed the table properly error : Record-count is not ok; is 73496 Should be: 73497 warning : Found 32 deleted space. Should be 0 warning : Found 1 deleted blocks Should be: 0 error : Corrupt v34_hlstatsx.hlstats_Events_Frags warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_Latency warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_PlayerActions warning : 3 clients are using or haven't closed the table properly error : Found 598985 keys of 598983 error : Corrupt v34_hlstatsx.hlstats_Events_PlayerPlayerActions OK v34_hlstatsx.hlstats_Events_Rcon OK v34_hlstatsx.hlstats_Events_Statsme warning : 3 clients are using or haven't closed the table properly error : Found 1113865 keys of 1113870 error : Corrupt v34_hlstatsx.hlstats_Events_Statsme2 warning : Table is marked as crashed warning : 3 clients are using or haven't closed the table properly error : Record at pos: 12402288 is not remove-marked error : record delete-link-chain corrupted error : Corrupt v34_hlstatsx.hlstats_Events_StatsmeLatency OK v34_hlstatsx.hlstats_Events_StatsmeTime OK v34_hlstatsx.hlstats_Events_Suicides warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_TeamBonuses warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Events_Teamkills warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Games OK v34_hlstatsx.hlstats_Games_Defaults OK v34_hlstatsx.hlstats_Games_Supported OK v34_hlstatsx.hlstats_Heatmap_Config OK v34_hlstatsx.hlstats_HostGroups OK v34_hlstatsx.hlstats_Livestats note : The storage engine for the table doesn't support check v34_hlstatsx.hlstats_Maps_Counts warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Mods_Defaults OK v34_hlstatsx.hlstats_Mods_Supported OK v34_hlstatsx.hlstats_Options warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Options_Choices OK v34_hlstatsx.hlstats_PlayerNames warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_PlayerUniqueIds warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Players warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Players_Awards warning : 1 client is using or hasn't closed the table properly status : OK v34_hlstatsx.hlstats_Players_History warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Players_Ribbons warning : 2 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Ranks OK v34_hlstatsx.hlstats_Ribbons OK v34_hlstatsx.hlstats_Roles OK v34_hlstatsx.hlstats_Servers warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Servers_Config OK v34_hlstatsx.hlstats_Servers_Config_Default OK v34_hlstatsx.hlstats_Servers_VoiceComm OK v34_hlstatsx.hlstats_Teams OK v34_hlstatsx.hlstats_Trend warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_Users OK v34_hlstatsx.hlstats_Weapons warning : 3 clients are using or haven't closed the table properly status : OK v34_hlstatsx.hlstats_server_load warning : 3 clients are using or haven't closed the table properly status : OK Repairing tables v34_hlstatsx.hlstats_Events_Connects warning : Number of rows changed from 52130 to 52129 status : OK v34_hlstatsx.hlstats_Events_Entries warning : Number of rows changed from 73497 to 73496 status : OK v34_hlstatsx.hlstats_Events_PlayerActions OK v34_hlstatsx.hlstats_Events_Statsme OK v34_hlstatsx.hlstats_Events_Statsme2 warning : Number of rows changed from 1109219 to 1109228 status : OK