Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Taci

    addikt

    válasz martonx #5333 üzenetére

    Na kipróbáltam, futott az update(-elő szkript) kb. fél percig, addig mint az őrült kattintgattam a weblapon (ezzel select lekérdezéseket generálva), és nem volt megakadás sehol sem.

    Próbáltam direktben lockolni is a táblát (LOCK TABLE cikkek WRITE), de egyrészt ez alatt is ment minden, másrészt a SHOW OPEN TABLES által visszaadott adatokban azt láttam, hogy nincs is lockolva. (Szóval lehet, ez nem is volt jó teszt ehhez.)

    Úgy csináltam anno meg amúgy (a kategóriás karbantartó szkriptet), hogy 100 rekordonként tol egy commit-ot. Nem tudom, ebben a kontextusban ennek köze van-e bármihez.

    Annyit találtam még (SQL oldalon), hogy talán lehet csak az érintett mezőket lockolni:
    SELECT ... FROM your_table WHERE domainname = ... FOR UPDATE
    Ezzel van tapasztalatotok? Jó lehet ide?

    Az indexeket létrehoztam az érintett mezőkre. Viszont ott észre vettem egy "érdekességet":
    Azt mondta az egyik mezőnél (utf8mb4), hogy Warning: #1071 Specified key was too long; max key length is 767 bytes. Ennek utána olvastam, és értem is az okát.

    A kérdésem az lenne ezzel kapcsolatban, hogy amikor ránézek az indexre, ezt látom:
    varchar(255)-ből varchar(191) lett. (ugye 767 / 4).
    Ez azt jelenti, ha az eredeti sztring 255 karakter hosszú, indexelve ebből csak az első 191 lesz? Vagy ez pontosan hogyan "manifesztálódik"?

    "bár szemlátomást, ő magával is ezt teszi :D"
    Ott a pont. :DDD Bár hidd el, nem szánt szándékkal teszem. :)

Új hozzászólás Aktív témák