Non proprio.
Una classe singleton e' una classe che ti impedisce in alcun modo di averne due istanze.
La tua classe MySql puo essere istanziata diverse volte con new ; pero utilizando la classe singleton che e' una mezza factory la crei una sola volta.


Per fare una classe singleton per prima cosa devi rendere privato il costruttore della classe stessa.
Cosi che se fai new ClasseSingleton lo script ti da errore e poi definire una getIstance all'interno della classe che ti restituisca l'istanza.

Codice PHP:
class MySql {
var 
$host
var 
$user;
var 
$pass;
var 
$data;
var 
$link;

private static 
istanzaMySql null;


    private 
__construct() {
    }

public static function 
getInstance() {
 if (
is_null(MySql::$istanzaMySql)) {
    
MySql::$istanzaMySql = new MySql();
}
   return 
MySql::$istanzaMySql;
}

.
.
.
il resto della classe


Cosi facendo l'unico modo per avere un istanza di MySql e' fare MySql::getInstance() e sei sicuro che sia sempre una e una sola istanza in tutto lo script.

Andrea