A teacher has been charged with multiple offences including assault after he allegedly stabbed a principal at a secondary school in Melbourne.