can you run sql server 2005 and sql server 2008 r2 in mirror mode? Must all db servers be running the exact same version to enable mirroring without a witness server? How about with a witness server in place?
The partners must be the same edition and the same version.

Please see BOL's reference on Database Mirroring Overview


  For a new mirroring session to be established, the partners and the witness, if any, must be running on the same version of SQL Server. 





  Since SQL Server 2005 Service Pack 1 (SP1), database mirroring partners and witnesses have been supported by Standard and Enterprise Edition. But the partners must use the same edition, and asynchronous database mirroring (high-performance mode) is supported only by Enterprise Edition. Witnesses are also supported by Workgroup Edition and Express Edition.