Then on a reboot mysql did not restart. If I run /etc/init.d/mysql restart I get the error "the partition with /var/lib/mysql is too full"
Libere espaço em /var ou quebre seu my.cnf (se esse é o nome do arquivo de configuração) e coloque seu banco de dados em uma partição com mais espaço.
The SD card has 19GB of space free.
Isso não significa que a partição /var viva tenha 19 GB livres. Sua distro, quando você instalou, pode ter dado apenas uma partição de 1 ou 2GB de espaço. Você pode precisar mover o banco de dados em outro lugar no seu sistema de arquivos.
Use um comando mount para descobrir quais partições você tem e df -h para verificar o espaço livre nelas.