Il motore di archiviazione MyISAM non supporta i vincoli di chiave esterna. Il vincolo viene analizzato ma ignorato silenziosamente.
Per risolvere il tuo problema usa invece il motore InnoDB (per entrambe le tabelle).
CREATE TABLE ( ... ) ENGINE = InnoDB ... ;
Invece di eliminare le tabelle e ricrearle, puoi anche cambiare il motore di archiviazione:
ALTER TABLE myDB.app_info ENGINE = InnoDB;
ALTER TABLE myDB.tab_info ENGINE = InnoDB;
Dopo aver modificato il motore, dovrai aggiungere nuovamente il vincolo di chiave esterna.