Вот вариант который должен практически летать подправил под pdo:
ini_set('mysql.connect_timeout', 10000);//тут можете поэкспериментировать
$start = microtime(true);//это же считает скок мы код выполняли и поэтому его нужно на самый верх
//$db = mysql_connect ("localhost","root","");
//mysql_select_db ("test",$db);
try {$bd=new PDO("mysql:host=localhost;dbname=test",$user,$pass,//думаю тут понятно что нужно заменить
array(PDO::ATTR_ERRMODE =>PDO::ERRMODE_WARNING));
}catch(PDOException $e){echo "#mysql_pdo #1 Fatal error! Not correct data for PDO(MYSQL) connection!";exit;}
//$z = mysql_query("SELECT * FROM t", $db);
//$rows = mysql_num_rows( $z );
$rows=$bd->query('SELECT count(*) FROM t')->fetch(PDO::FETCH_ASSOC)['count(*)'];
echo $rows;
$rz='';//создаем строковую переменную
for($i=$rows;$i<1000000;i++) {
$rz.=("INSERT INTO t(ticket_id) VALUES(rand()*1000000);");//записываем запрос в строчку
};
//mysql_query ($rz);//одним запросом все отправляем
$bd->exec($rz);
unset($rz);//освобождаем память
echo '<br>Скрипт выполнялся ',microtime(true) - $start, 'сек';//че заа ужас тут был?