Intenta ejecutar un comando desde PHP...
Insertar CODE, HTML o PHP:
header('Content-Disposition: attachment; filename=dump.sql');
header('Content-Transfer-Encoding: binary');
header('Content-type: application/force-download');;
$linux = '/mysql/bin/mysqldump';
$windows = 'C:\mysql\bin\mysqldump.exe';
/* root = usuario MySQL | 12345 = contraseña MySQL | db_name = base de datos */
passthru($windows. ' -u root --password=12345 --opt db_name'); // Ejecutamos el comando, puedes usar system() u otro... para una vez.
Si no quieres que se descargue, pero sí que se guarde en el servidor, pon al final del comando: "> /guardar/en/directorio/dump.sql".
La dirección la he cogido de xampp, suponiendo que Byethost utilice Windows podría funcionar. Si es Linux, como existen muchas distribuciones tendrías que intentar averiguar la dirección de la que use... y cruzar los dedos para que no la hayan cambiado. Podrías saber si es Windows o Linux desde el mismo panel de Byethost, pero también puedes mostrar la dirección de la cuenta con "$_SERVER['DOCUMENT_ROOT']".
Si no te sirve, lo que podrías hacer es usar algún generador de backups (también en PHP) de los que hay por ahí. Generalmente, lo que esto hace consumir recursos del servidor para simular un dump. Como va a ser una única vez, supongo que te dará igual que no sean eficientes.