Mysql
 sql >> база данни >  >> RDS >> Mysql

Ресурсът Mysql временно не е наличен

Да предположим, че вашата система в момента е базирана на Unix (както е посочено във вашето изявление за проблема). Ако това е правилно, ето набора от проблеми, с които може да се сблъскате:

  1. Изчерпахте памет достъпно за MySQL.

    Това е най-вероятният проблем, с който се сблъсквате. Всяка връзка в пула за връзки на MySQL изисква памет, за да функционира и ако този ресурс е изчерпан, не могат да се правят други връзки. Разбира се, размерите на паметта и максималните размери на пакети от различни операции могат да бъдат настроени в вашият еквивалент на my.cnf ако откриете, че това е проблем.

    Ето допълнителна нишка, която може да ви помогне , но може да помислите и за използването на по-прости инструменти за профилиране като top за да получите добра предварителна оценка за случващото се.

  2. Изчерпаха ви файлови дескриптори достъпно за вашия потребителски акаунт в MySQL.

    Друг често срещан проблем:ако се опитвате да обслужвате заявки, които изискват файл IO над границата от 1024 (по подразбиране), ще срещнете случаи, когато операцията просто се провали. Това е така, защото повечето системи определят меко и твърдо ограничение за броя на отворените файлови дескриптори, които всеки потребител може да има едновременно, и преминаването над този праг може да причини проблеми.

    Това обикновено ще има серия от крещящо очевидни признаци, изразени във вашите регистрационни файлове. Проверете /var/log/messages и вашите сравними директории (например /var/log/mysql за да видите дали можете да намерите нещо интересно.

  3. Попаднали сте в живо или безизходица сценарий, при който нишката ви е неудовлетворителна.

    Следствие от изчерпването на паметта и файловия дескриптор, нишките могат да изтекат, ако сте превишили изчислителното натоварване, с което вашата система може да се справи. Няма да изведе това съобщение за грешка, но това е нещо, за което трябва да внимавате в бъдеще.

  4. Системата ви изчерпва PID, достъпни за fork .

    Друг често срещан сценарий:fork има само толкова много PID на разположение за използване във всеки даден момент. Ако вашата система е просто превишена , той ще престане да може да обслужва заявки.

    Най-лесната проверка за това е да видите дали други услуги могат да се свържат към машината. Например опитът да влезете в кутията по SSH и да откриете, че не можете, е голяма улика.

  5. Прокси сървър или мениджър на връзки нагоре по веригата са свършили ресурсите и са престанали да обслужват заявки.

    Ако имате някакъв сервизен слой между вашия клиент и MySQL, той носи проверка, за да се види дали се е сринал, увиснал или по друг начин е станал нестабилен. Съветът по-горе е в сила.

  6. Вашият картограф на портове се е изчерпал след 65 536 връзки .

    Малко вероятно, но отново, възможен случай на изчерпване. Проверката на тривиалната сервизна връзка, както е посочено по-горе, е, хм, и най-доброто пристанище за повикване тук.

Накратко:това е сценарий на изчерпване на ресурсите, включително сървърът просто да е "надолу". Ще трябва да профилирате системата си допълнително, за да видите какво блокирате. Всичко, което съобщението за грешка ни дава в този случай, е фактът, че ресурсът е недостъпен за клиента - ще трябва да видим повече информация за сървъра за да се определи по-адекватно средство за защита.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Spring Mvc Hibernate Encoding/Multi-line import sql

  2. Откриване на заключени маси (заключени от LOCK TABLE)

  3. Услуга за база данни MySQL – нови иновации в HeatWave

  4. Node.js се свързва с MySQL Docker контейнер ECONNREFUSED

  5. Репликация на GROUP_CONCAT за pandas.DataFrame