Jump to content
php.lv forumi

Recommended Posts

Posted

Man ir liela datu bāze un es skatos, ka pie update funkcijas, man kautkas aizķerās un dažiem vaicājumiem status ir locked.

Kā ar šo var cīnities un , kas to izraisa?

Posted

Tu noteikti neizmanto standarta funkciju "mysql_query" , cik es sapratu.

 

Teiksim ja tu izmanto teiksim "myCoolFunction_Query($q)" tad nočeko funkcijā vai tur netiek piesaistīts "Lock Table" kamēr notiek query izpilde.

Posted (edited)

Tu noteikti neizmanto standarta funkciju "mysql_query" , cik es sapratu.

 

Teiksim ja tu izmanto teiksim "myCoolFunction_Query($q)" tad nočeko funkcijā vai tur netiek piesaistīts "Lock Table" kamēr notiek query izpilde.

 

nee, es izmantoju mysql_query

 

nolokojas uz UPDATE querijiem.

trigerus neizmantoju.

Edited by freak
Posted

Cik ierakstu tev skaitās liela DB?

 

Patiesība jau konkretā tabula, kas lockojas nav nemaz tik liela - 50k ierakstu. Vairāk problēma ir tā , ka gandrīz katru sekundi ir kāds pieprasījums. Tiek izpildīti gan select, gan update vaicājumi un uz update vaicājumiem viņš nolokojas.

Posted

Teorētiski varētu pietikt ar tabulas tipa nomaiņu no MyISAM uz InnoDB, jo MyISAM gadījumā pie insert/update/delete operācijām tiek lokota visa tabula. Tas nozīmē, ka uz to brīdi apstājas visi selekti, kas gaida kamēr tiks pabeigtas insert/update/delete operācijas. InnoDB gadījumā tiek lokota tikai konrkētā rinda, kura tiek labota/dzēsta/pievienota. Attiecīgi selektiem tas traucē daudz mazāk.

 

Jebkurā gadījumā prasās pēc detalizētākas informācijas par to, kas tas ir, ko tu taisi :)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...