Intshayelelo kwimpazamo ye-MySQL: Unxibelelwano oluninzi kakhulu
Xa unesicelo sewebhu (indawo, ibhlog, iforamu, njl.njl) ekwimfuno ephezulu, oko kukuthi, inani elikhulu labasebenzisi abatyelelayo, oku kuguqulela ekusebenziseni okwandisiweyo kwiseva. Ukuba i-app yewebhu isebenzisa isiseko sedatha se-MySQL kwaye imibuzo ininzi kakhulu (ngenxa yenkqubo embi yewebhu okanye ngabasebenzisi abaninzi abasebenzisa iwebhu), kunokwenzeka ukuba i-MySQL ibonise lempazamo:
mysqli_connect(): (HY000/1040): Too many connections
Ithetha ntoni i-MySQL: Impazamo ezininzi zonxibelelwano zithetha ntoni?
Kuthetha ukuba izicelo ezininzi kakhulu ziza kwi-MySQL, ngaphezulu kunokuba inokwamkela, ngaphezulu kokuma emgceni okanye ukulinda.
Ungayisombulula njani?
Elula, kufuneka sonyuse umda ophezulu wezicelo (unxibelelwano) oluxhaswa yi-MySQL.
Ndiza kukunika iindlela ezimbini zokulungisa le ngxaki:
1. Sihlela ifayile /etc/mysql/my.cfg:
nano /etc/mysql/my.cfg
Kuyo sibeka oku kulandelayo phantsi kwento ethi [mysql]:
max_connections = 500 max_user_connections = 500
Oku kuyonyusa elona nani liphezulu lonxibelelwano ukusuka kwi-100 (engagqibekanga) ukuya kuma-500.
Sigcina kwaye siphume, emva koko siqala inkonzo ye-MySQL kwaye yiyo. Olu tshintsho luhlala luhleli.
2. Enye indlela yokusombulula le ngxaki kukutshintsha umda olinganayo, kodwa ngombuzo we-MySQL.
Masiqale sibonise umda wangoku:
mysql --user="root" --password="PASSWORD" --execute='SHOW VARIABLES LIKE "max_connections";'
Oku kuya kusibonisa into enje:
+ ----------------- + ------- + | Igama_ eliguquguqukayo | Ixabiso | + ----------------- + ------- + | max_nxibelelwano | 151 | + ----------------- + ------- +
Ngamanye amagama, umda wangoku kukudityaniswa kwe-151, ke, masiyiphakamise iye kuma-500 ngombuzo:
mysql --user="root" --password="PASSWORD" --execute='SET GLOBAL max_connections = 500;'
Ilungile!
Ingxaki ngale ndlela kukuba xa inkonzo iqaliswa kwakhona, loqwalaselo lulahlekile.
Ukubonelela ngezi nkcukacha, unokwenza iscript esishicilelweyo esiqinisekiswa liX lonke ixesha, okanye ukongeza umgca ekuqaleni okanye ukuqala kwakhona ibhloko yedayemon da
Kodwa ke kutheni ndifuna ukwazi olu khetho lwe-2? ..., yile nto bendisoloko ndiyithetha. Kodwa kwinyanga ephelileyo i-Ubuntu Server ayihoyanga indlela engu-1, ke ... kwiimeko ezigwenxa ze-OS engenangqondo, sinolu khetho lwe-2 olusebenza ngokuchanekileyo 😉
Iposi elungileyo, i-MySql… basebenzisa kakhulu kwi-FreeBSD,… .KZKG ^ Gaara?,… Kuya kuba kuhle ukuba wenza iposti, kwindlela yokufaka kunye nokumisela i-MySql kwi-FreeBSD njenge: SSH (ikhuselekile - iqokobhe), i-SSH ( ngeWebhu), i-SFTP (i-SSH-File Transfer Protocol), i-Apache- PHP- MySql, PHP5 kunye ne-PhpSysInfo Extensions.
Ukwenza oku kuya kufuneka ndifake i-FreeBSD, andicingi ukuba ndinalo ixesha ngoku, nditshintshe nje imisebenzi kwaye ndinoxanduva oluninzi 🙁
Kutshanje kuye kwafuneka ndenze into efanayo kwiprojekthi enee-nodejs. Kwimeko yam inyuke yaya kwi-250 kwaye ibanele kum, okwangoku ndenza kakuhle. Enkosi ngolwazi
Molo, ungandinceda ukuba ungene njani /etc/mysql/my.cfg?
NdineVPS, kodwa andinakungena ngePUTTY.
Ukubulisa
Ukusombulula ingxaki yoKhetho 1- Inketho evakalisiweyo, kwaye ugcine utshintsho xa uqala kwakhona iserver, ifayile kufuneka ihlelwe ngokwenguqulo:
///////////////////////////////////////////////////////// // //////////////////////
// Nditshintsha umkhombandlela ku-Ubuntu 16.04 //////////////////////////
///////////////////////////////////////////////////////// // //////////////////////
Ndabona /etc/mysql/mysql.conf.d/mysqld.cnf
///////////////////////////////////////////////////////// // //////////////////////
// Nditshintsha umkhombandlela ku-Ubuntu 15.04 //////////////////////////
///////////////////////////////////////////////////////// // //////////////////////
vi /etc/mysql/mariadb.conf.d/mysqld.cnf
///////////////////////////////////////////////////////// // //////////////////////
// Nditshintsha umkhombandlela ku-Ubuntu endala //////////////////////////
///////////////////////////////////////////////////////// // //////////////////////
vi /etc/mysql/my.cnf (ifumaneka ngesiNgesi kuphela)
///////////////////////////////////////////////////////// // //////////////////////
// yongeza lo mgca phantsi kwe [mysqld] okanye [mysql] tag //
// Emva koko qala iseva //
///////////////////////////////////////////////////////// // //////////////////////
max_dibaniso = 500
Isifundo esivela ekuqaleni ngaphandle kwexesha likuxelela ukuba ungayitshintsha njani