Descobri isso. Arquivo aberto do LaunchDaemon plist para ver o comando exato que seria executado. Correu isso manualmente para ver a saída de inicialização e, eventualmente, veio com a solução:
sudo mysql_install_db5 --datadir=/opt/local/var/db/mysql56
sudo chown -R _mysql:_mysql /opt/local/var/db/mysql56/
sudo mysql_upgrade
Se você precisar de ajuda para rastrear erros de inicialização, abra Console
e mensagens contendo "mysql". No meu caso, o processo estava se fechando rapidamente, causando um loop infinito de novas tentativas. Para aprofundar, abra este arquivo para ver como ele é lançado:
/Library/LaunchDaemons/org.macports.mysql56-server.plist
De lá, podemos ver que basicamente é executado
/opt/local/bin/daemondo --label=mysql56-server --start-cmd /opt/local/lib/mysql56/bin/mysqld --user=_mysql
Então, na linha de comando, tente
sudo -u _mysql /opt/local/lib/mysql56/bin/mysqld
e observe a saída de inicialização.