-->

Erro ao estabelecer uma ligação com a base de dados

Erro ao estabelecer uma ligação com a base de dados

Talvez este seja a mensagem mais terrível que um dono de site ou Blog possa ver quando tenta acessar a sua página; porque esta mensagem sinaliza simplesmente ausência do trabalho na internet, e pior … um site “fora do ar” também sinaliza negativamente no google que vai deixar o site mais longe dos buscadores do Google.

Uma das características de quem começa um site ou blog, é usar um PC de 512 Mega, eles são mais baratos para tudo ! não só contratação de Plano de hospedagem, como até para contratação de máquina na nuvem ( Cloud Computing ).

Porém, percebe que esta baixa capacidade traz também alguns problemas não característicos em grandes PCs, nestes grandes, estes problemas não ocorrem porque tem potencia sobrando ! uma delas é o acesso simultâneo ao seu site ou Blog, e este problema pode ser o “Killamento” ou encerramento de processo que tentam usar mais memória do que tem disponível, e isto vai deixar seu Blog ou Site “fora do ar”, ou seja, fora de operação.

Entenda o erro mais comum gerado pelo MySQL, quando ele simplesmente para de funcionar e deixa todo seu sistema sem funcionar, e também qualquer outra página, site ou blog e ainda aplicativos instalados que dependa do sistema de banco de dados. Entenda como usar um Servidor pequeno para deixar seu site com estabilidade sem riscos de “ShutDown“, ou caida repentina do sistema.

 

 

arquivo

 

MySQL sem Memória

Se todos os aplicativos que existem em um servidor, o mais crítico é mesmo o gerenciador de dados, o mais comum de todos é o MySQL da Oracle ! Ele tem fama de ser muito rápido ! porém comer muita memória ! As vezes testamos o banco de dados gerenciando pouca coisa, ou pouco acesso, mas esquecemos como a coisa ficaria se estes acessos aumentarem “um pouco

 

O problemas mais frequente hoje é provocado pelo engine (motor) chamado InnoDB, ele usa um sistema diferente do MyISAM, é uma diferença pequena …que pode trazer dor de cabeça ao gerenciador do servidor, quando o sistema InnoDB tenta alocar memória, então quando o sistema percebe que não tem o suficiente … ele mata o MySQL que para então de funcionar .. – tragédia -.

 

server kernel: [1192959.658834] Out of memory: Kill process 2648 (mysqld) score 109 or sacrifice child
server kernel: [1192959.659425] Killed process 2648 (mysqld) total-vm:323048kB, anon-rss:56172kB, file-rss:0kB
server mysqld: 141010 9:30:58 InnoDB: The InnoDB memory heap is disabled
server mysqld: 141010 9:30:58 InnoDB: Mutexes and rw_locks use GCC atomic builtins
server mysqld: 141010 9:30:58 InnoDB: Compressed tables use zlib 1.2.7
server mysqld: 141010 9:30:58 InnoDB: Using Linux native AIO
server mysqld: 141010 9:30:58 InnoDB: Initializing buffer pool, size = 128.0M
server mysqld: InnoDB: mmap(135987200 bytes) failed; errno 12
server mysqld: 141010 9:30:59 InnoDB: Completed initialization of buffer pool
server mysqld: 141010 9:30:59 InnoDB: Fatal error: cannot allocate memory for the buffer pool
server mysqld: 141010 9:30:59 [ERROR] Plugin ‘InnoDB’ init function returned error.
server mysqld: 141010 9:30:59 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed.
server mysqld: 141010 9:30:59 [ERROR] Unknown/unsupported storage engine: InnoDB
server mysqld: 141010 9:30:59 [ERROR] Aborting
server mysqld: 141010 9:30:59 [Note] /usr/sbin/mysqld: Shutdown complete
server mysqld_safe: mysqld from pid file /var/run/mysqld/mysqld.pid ended

 

Neste caso, o “Kilamento” (ou morte do processo) MySQL feito pelo Sistema, justamente para proteger outros processos, já que o MySQL tenta alocar mais memória que a disponível, vai mostrar este sintomas no arquivo SYSLOG (no linux),mas não no Log do MySQL, isto ocorre porque o MySQL é “morto” pelo sistema que não o avisa antes de fazer. Por isto , dar uma olhada no Log do Site ou Log não vai mostrar o problema, mas sim olhar no Log do Sistema (Linux, Windows, etc).

 

Neste caso, a opção a tomar é Aumentar a memória do Sistema OU diminuir o tamanho do Buffer InnoDB em:

/etc/mysql/my.cnf .

.
.
[mysqld]
innodb_buffer_pool_size=64M
.
.

 

Diminuir o tamanho do Buffer Pool pode resolver o problema, mas se o acesso ficar gigante, o erro ainda pode ocorrer novamente, uma forma de contonar isto, é fazer um checkup pelo Cron (agendamento do Sistema Linux) para verificar cada 5 minutos, se acaso detectar o MySQL desligado, então ele liga.

Inclua esta linha em:
/etc/crontab

*/5     * * * * root    cd / && run-parts –report /etc/cron.5

 

Criar a Pasta:
/etc/cron.5

e incluir o arquivo:
/etc/cron.5/checarmysql

Com o texto

#!/bin/sh
/var/www/checar-mysql.py

O arquivo em /var/www/checar-mysql.py (em python) devera ter o seguinte conteudo:

#!/usr/bin/python
import latin
import MySQLdb as mdb

try:
con = mdb.connect(‘127.0.0.1’, ‘USUARIOMYSQL’, SENHAMYSQL’, ‘NOMEBANCO’);

print “OK MYSQL”
con.close()
exit

except:
os.system(“/usr/bin/mysqlcheck -c -u USUARIOMYSQL -pSENHAMYSQL –all-databases”)
os.system(“/etc/init.d/mysql restart”)

 

Com as configurações acima, será possível manter nosso sistema estável, mesmo usando uma memória pequena de 512Mega, e se houver um “Kill” no sistema MySQL, o agendador Cron será capaz de chamar um programa para verificar, e se for assim, restabelecer o MySQL de volta a operação.

 

This article has 104 comments

  1. diamox 250mg sale oral diamox 250 mg order azathioprine 25mg online cheap

  2. digoxin 250mg cheap cost molnupiravir 200mg molnupiravir 200mg pills

  3. buy amoxil 500mg without prescription buy amoxil 500mg pills generic name for ivermectin

  4. order coreg 6.25mg online cheap carvedilol sale order elavil 10mg generic

  5. purchase dapoxetine without prescription priligy price motilium 10mg for sale

  6. fosamax 35mg cost motrin 600mg ca order ibuprofen online cheap

  7. indocin 50mg price cenforce 50mg sale cenforce 100mg generic

  8. nortriptyline 25mg brand paxil pills buy paxil 20mg generic

  9. order doxycycline 100mg online chloroquine pills medrol cost in usa

  10. famotidine 20mg cost buy pepcid sale remeron 30mg oral

  11. tadacip 20mg generic tadacip 10mg pills order trimox 250mg generic

  12. buy ropinirole generic calcitriol 0.25 mg for sale labetalol 100mg cheap

  13. buy fenofibrate 200mg generic order sildenafil 50mg pills purchase sildenafil for sale

  14. minocycline 50mg price minocycline 50mg sale hytrin 5mg pill

  15. generic cialis cost Discount cialis online cheap generic sildenafil

  16. order metformin 500mg pill order nolvadex 10mg generic cost nolvadex 20mg

  17. buy cialis 20mg without prescription medications for ed can i buy ed pills over the counter

  18. buy accutane without prescription isotretinoin 40mg price ampicillin order online

  19. prednisone 20mg tablet prednisone 20mg uk buy amoxicillin pills

  20. buy oral stromectol stromectol canada prednisone 20mg tablet

  21. order fildena 50mg for sale buy lyrica generic purchase proscar generic

  22. order isotretinoin 20mg online purchase amoxil generic zithromax 250mg without prescription

  23. purchase ondansetron generic sulfamethoxazole for sale bactrim online

  24. order prednisolone 40mg for sale buy neurontin 800mg online buy lasix 100mg

  25. ventolin canada purchase augmentin generic order augmentin 375mg generic

  26. order provigil 100mg generic cheap lopressor buy lopressor 50mg generic

  27. buy generic vibra-tabs doxycycline 200mg brand purchase acyclovir sale

  28. order dutasteride pill buy avodart 0.5mg pill xenical 120mg generic

  29. inderal 20mg pills buy generic propranolol buy generic carvedilol

  30. buy ditropan 5mg generic oxybutynin uk oral oxcarbazepine

  31. buy azathioprine 25mg online cheap telmisartan 80mg drug naproxen 250mg pill

  32. omnicef canada order lansoprazole 30mg pills protonix without prescription

  33. brand uroxatral 10 mg order diltiazem 180mg generic purchase diltiazem without prescription

  34. buy avlosulfon generic tenormin cheap buy cheap generic tenormin

  35. buy viagra 50mg sale viagra 100mg usa order cialis 20mg online cheap

  36. buy cheap zetia purchase ezetimibe generic cost methotrexate 2.5mg

  37. phenergan over the counter tadalafil next day order cialis 40mg online cheap

  38. how to buy medex order reglan 10mg pills allopurinol 100mg over the counter

  39. buy levaquin 500mg without prescription actigall 150mg us buy bupropion online

  40. order zyrtec for sale cetirizine generic purchase zoloft without prescription

  41. order escitalopram 10mg sale fluoxetine 20mg cost buy generic revia 50 mg

  42. order atorvastatin 10mg online cheap cost sildenafil 100mg female viagra

  43. letrozole for sale buy viagra buy viagra for sale

  44. buy tadalafil online sildenafil pills 200mg otc ed pills that work

  45. cheap tadalafil tablets tadalafil without prescription fda approved over the counter ed pills

  46. buy modafinil pill modafinil 200mg price deltasone 10mg cheap

  47. order amoxil 500mg generic brand prednisolone 40mg order prednisolone 40mg generic

  48. order isotretinoin 40mg pills buy zithromax 250mg pills buy azithromycin pill

  49. gabapentin canada buy neurontin 600mg generic buy doxycycline 200mg sale

  50. purchase prednisolone for sale gabapentin for sale furosemide 100mg usa

  51. where can i buy ventolin order albuterol 4mg pill synthroid oral

  52. buy cheap generic nexium purchase nexium buy topamax 200mg

  53. order allopurinol pills buy zyloprim 100mg pills purchase rosuvastatin online

  54. sumatriptan 50mg cheap sumatriptan uk dutasteride order

  55. purchase motilium generic buy coreg 6.25mg sale sumycin medication

  56. flomax 0.2mg brand cost ondansetron 4mg order zocor 20mg generic

  57. buy a term paper online order essays online writing dissertation service

  58. order aurogra 50mg pills sildenafil 50mg sale estradiol 2mg brand

  59. diflucan 200mg sale buy generic ampicillin 500mg order cipro 500mg pills

  60. purchase lamictal pills mebendazole buy online order mebendazole 100mg for sale

  61. buy metronidazole without prescription buy bactrim online brand cephalexin

  62. buy tadacip 10mg generic buy indocin 50mg sale buy indomethacin cheap

  63. buy lamisil 250mg pills real money slot machines real online blackjack

  64. how to get desyrel without a prescription sildenafil 50mg pill purchase clindac a for sale

  65. Escape reality, embrace the virtual. Level up your gaming life with us Lucky Cola

  66. aspirin 75mg sale free online casino real money no deposit play poker online free no sign up

  67. buy amoxicillin 500mg sale buy anastrozole for sale clarithromycin over the counter

  68. academic writing support slots games real casino slot machine games

  69. buy catapres online cheap antivert price order spiriva 9mcg generic

  70. buy rocaltrol 0.25mg buy fenofibrate 200mg sale buy fenofibrate 200mg

  71. low cost prescription acne medication order oxcarbazepine 300mg without prescription buy generic oxcarbazepine for sale

  72. buy minocin 50mg online purchase terazosin pills buy requip 2mg sale

  73. cost alfuzosin alfuzosin canada prescription med for abdominal cramps

  74. sleep meds prescribed online most potent sleeping pills weight loss prescription online consultation

  75. provera 10mg drug biltricide ca order hydrochlorothiazide 25mg pills

  76. drugs used for smoking cessation prescription painkillers online for cheap list of strongest pain medications

  77. best topical creams for herpes inhaler online prescription is insulin better than metformin

  78. antifungal supplements for kids antifungal supplements for kids how to lower blood pressure quickly

  79. buy promethazine online cheap order promethazine sale stromectol generico

  80. list of prescription stomach medications hypertensive crisis chart boots online doctor service

  81. buy prednisone 20mg pill deltasone 5mg ca buy generic amoxil 500mg

  82. emergency contraception pill walmart exercises to increase ejaculation time yimusake tablets or qilin pills

  83. order azithromycin for sale buy generic neurontin for sale order gabapentin 100mg

  84. best generic heartburn medication tablet for nausea during pregnancy fart freshener pill

  85. order ursodiol 150mg without prescription order bupropion 150mg buy cetirizine 5mg sale

  86. purchase escitalopram online brand naltrexone 50mg buy cheap generic naltrexone

  87. purchase amoxiclav for sale buy clavulanate sale clomiphene canada

Deixe um comentário