mysqli::kill

mysqli_kill

(PHP 5, PHP 7)

mysqli::kill -- mysqli_killAsks the server to kill a MySQL thread

Descrierea

Stil obiect-orientat

public mysqli::kill ( int $processid ) : bool

Stil procedural

mysqli_kill ( mysqli $link , int $processid ) : bool

This function is used to ask the server to kill a MySQL thread specified by the processid parameter. This value must be retrieved by calling the mysqli_thread_id() function.

To stop a running query you should use the SQL command KILL QUERY processid.

Parametri

link

Numai stilul procedural: Un identificator al legăturii întors de mysqli_connect() sau mysqli_init()

Valorile întoarse

Întoarce valoarea true în cazul succesului sau false în cazul eșecului.

Exemple

Example #1 mysqli::kill() example

Stil obiect-orientat

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""world");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* determine our thread id */
$thread_id $mysqli->thread_id;

/* Kill connection */
$mysqli->kill($thread_id);

/* This should produce an error */
if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {
    
printf("Error: %s\n"$mysqli->error);
    exit;
}

/* close connection */
$mysqli->close();
?>

Stil procedural

<?php
$link 
mysqli_connect("localhost""my_user""my_password""world");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* determine our thread id */
$thread_id mysqli_thread_id($link);

/* Kill connection */
mysqli_kill($link$thread_id);

/* This should produce an error */
if (!mysqli_query($link"CREATE TABLE myCity LIKE City")) {
    
printf("Error: %s\n"mysqli_error($link));
    exit;
}

/* close connection */
mysqli_close($link);
?>

Exemplele de mai sus vor afișa:

Error: MySQL server has gone away

A se vedea și

add a note add a note

User Contributed Notes 1 note

up
1
johnjawed at gmail dot com
20 years ago
Be careful using this before mysqli::close.

Killing the thread before actually closing the connection will leave the connection open! And depending on your max_connections and max_user_connections (by default the same), this could result in a "Max connections reached for **** user" message.
To Top