Você deve mysqldump cada banco de dados individualmente. Além disso, uma vez que as tabelas de permissões para o MySQL 4.1 não correspondem às tabelas de permissões para o MySQL 5.5, você tem que copiar o MySQL Grants no formato SQL.
#
# mysqldump each database except the 'mysql' schema
#
MYSQL_USER=root
MYSQL_PASS=rootpassword
MYSQL_CONN="-u${MYSQL_USER} -p${MYSQL_PASS}"
mysql ${MYSQL_CONN} -ANe"SHOW DATABASES" | grep -v mysql | > /tmp/ListDBs.txt
for DB in 'cat /tmp/ListDBs.txt'
do
mysqldump ${MYSQL_CONN} --hex-blob --databases ${DB} > ${DB}.sql
done
#
# Dump MySQL Grants as SQL
#
mysql ${MYSQL_CONN} -ANe"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>''" | mysql ${MYSQL_CONN} -AN | sed 's/$/;/g' > MySQLUserGrants.sql
Quando você executa todos os scripts contra o MySQL 5.5, eles irão
- recriar cada banco de dados
- reconstruir índices novos
- carrega usuários MySQL do banco de dados MySQL 4.1 no MySQL 5.5
Experimente!