yo propondría algo aSÍ
Código sql:
Ver originalUPDATE tabla SET dnint=(1000000 + round(rand()*(9999999-1000000)));
pon el campo como unique y ejecuta esto.
si se repite un numero, vuelve a repetirlo. es muy poco probable que en tantos números se repitan en tan pocas muestras.
saludos