Como um binlog terá um formato específico no momento em que você fizer isso, você pode decidir não jogar com os dois formatos juntos, embora o MySQL (eh Oracle [ainda não consiga sair da minha língua]) tenha construído esse recurso.
Para jogá-lo totalmente seguro sem uma reinicialização do mysql, tente o seguinte:
FLUSH TABLES WITH READ LOCK;
FLUSH LOGS;
SET GLOBAL binlog_format = 'MIXED';
FLUSH LOGS;
UNLOCK TABLES;
Isso deixará o último binlog no formato 'MIXED'. O penúltimo (próximo ao último) binlog existe apenas para encerrar o último binlog que estava no formato anterior.
Todas as sessões existentes anteriores à primeira FLUSH LOGS;
começarão a ser gravadas no último binlog após a UNLOCK TABLES;
execução.
De uma chance !!!
EMBARGO
Dando crédito onde o crédito é devido, minha resposta está realmente pegando carona com a resposta de @ Jonathan . Apenas fecho e abro binlogs em cima disso. Ele recebe um +1 por trazer isso à tona primeiro.
UPDATE 2011-10-12 13:58 EDT
Se você fizer isso com um mestre ativo e houver um ou mais escravos replicando a partir desse mestre, será necessário se preocupar com o fato de os logs de retransmissão também estarem no novo formato. Aqui está o que você pode fazer:
No Escravo, corra STOP SLAVE;
No Master, execute estes:
FLUSH TABLES WITH READ LOCK;
FLUSH LOGS;
SET GLOBAL binlog_format = 'MIXED';
FLUSH LOGS;
UNLOCK TABLES;
No Escravo, corra START SLAVE;
A execução STOP SLAVE;
e START SLAVE;
gira os logs de retransmissão e faz com que as novas entradas sejam replicadas, seja qual for o formato. Você também pode aplicar a alteração binlog_format no escravo.