sql >> Database >  >> RDS >> Mysql

PHP/MySQL kritieke sectie

Nog een oplossing voor de volledigheid:

private function getLock() {
    $lock = $this->pdo->query("SELECT GET_LOCK('my_lock_name', 5)")->fetchColumn();

    if ($lock != "1")
        throw new RuntimeException("Lock was not gained: " . $lock);
}

private function releaseLock() {
    $releaseLock = $this->pdo->query("SELECT RELEASE_LOCK('my_lock_name')")->fetchColumn();

    if ($releaseLock != "1")
        throw new RuntimeException("Lock not properly released " . $releaseLock);
}

MySQL GET_LOCK() documentatie



  1. MySQL:transacties versus tabellen vergrendelen

  2. Hoe deze eenvoudige Mysql-query te optimaliseren?

  3. SQLite groeperen op / uren, dagen, weken, jaar tellen

  4. mysql invoegen indien niet aanwezig zonder unieke sleutel