La escuadra imperial subió el río Paraná a fin de bloquear a la escuadrilla paraguaya en "Tres Bocas", la confluencia de los ríos Paraguay y Paraná.
El Amazonas contaba en ese momento con una tripulación de 14 oficiales y 149 tripulantes, muchos de los cuales se encontraban en tierra buscando leña para suplir la falta de carbón Meza desechó el abordaje y abrió fuego, que fue respondido por la escuadra imperial.
El Jejuí recibió graves daños al igual que las chatas, por lo que los paraguayos se refugiaron en el Riachuelo protegidos por las baterías de tierra y la fusilería de la infantería.
El almirante Barroso hizo transmitir por señales a sus buques tres frases que serían célebres en la historia naval brasilera: "Brasil espera que cada hombre cumpla con su deber", "Atacar y destruir al enemigo tan cerca como sea posible" y "Mantener el fuego que la victoria es nuestra".
Pese a la resistencia de los marineros y la tropa que "peleaban solos, pues al retirarse el comandante a la sala de armas le siguieron todos los oficiales.
Con la caldera destruida, el Marquês de Olinda fue arrastrado por la corriente hasta varar en un banco.
La mayor parte de sus tripulantes murieron quemados o heridos por el fuego enemigo.
El Amazonas marchó seguido de sus consortes (exceptuando el Mearim que dejó la formación en auxilio del Belmonte) contra los restantes buques paraguayos, embistió y hundió primero al Jejui y seguidamente a la última chata remolcada por el Salto Oriental, lanzándose luego en persecución del Pirabebé, Yporá e Ygurei que se dirigían ya aguas arriba.
Al observar que el Salto Oriental y el Marquês de Olinda trataban de recuperarse, el Amazonas cambió de rumbo y espoloneó al primero, que comenzó a hundirse rápidamente, y luego al segundo.