¿Cómo insertar / crear procedimientos almacenados en mySQL desde PHP?

Tengo una serie de procedimientos almacenados realizados con MySQL Workbench. Funcionan bien cuando uso MySQL workbench para ponerlos en mi base de datos de prueba.

Ahora estoy preparando los scripts de creación de base de datos para la implementación, y este es el único que me da problemas. Cuando uso la línea de comando / mysql shell, el script funciona perfectamente bien. Solo cuando uso la interfaz PHP mysql (i) para ejecutar el script, falla. Sin comentario.

Utilizo los scripts de creación de procedimientos que MySQL workbench genera para mí; es decir, tiene este patrón:

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';

al comienzo del script, luego repite para cada procedimiento:

DELIMITER $
USE `dbname`$
CREATE PROCEDURE `procname`(IN inputparameters)
BEGIN

... el procedimiento va aquí

;
END$
DELIMITER ;

Este script funciona bien si se ejecuta desde MySQL Workbench. También funciona bien si intento lo mismo desde la línea de comandos mysql. Pero no logra nada cuando lo ejecuto a través de la interfaz mysqli de PHP (ejecutándolo con mysqli_multi_query, que funciona bien para los otros scripts que crean y pueblan la base de datos). No se devuelve ningún error en la interfaz, no hay resultados (!). Todo lo que obtengo es "falso", y eso es todo. el código de error está en 0, no hay mensaje de error.

Es un gran WTF para mí, y espero que pueda orientarme en la dirección correcta. ¿Cómo puedo solucionar esto e instalar los procedimientos desde PHP?

PD: el acceso root / admin se da y verifica (después de todo, acabo de crear la base de datos con la misma conexión, usuarios creados, tablas insertadas, etc.).

Respuestas a la pregunta(3)

Su respuesta a la pregunta