I've actually dug in deeply on iPage's moodle issue and it turns out that it's the binlog_format cannot be changed to mixed or row.
I ended up rewriting all references of READ COMMITTED to REPEATABLE READ and that at least got the install working!
Here's my thread response on a different thread below. If anyone needs help I could package the 2.6.1 version I'm using on iPage now and make available!
---
This was a big help getting installs to work on version 2.0+ on a hosted mysql environment where I couldn't set session or globals for my instance (iPage.com). I would note that I couldn't get things working with editing just the single file. I ended up editing them with a one-liner perl script.
perl -i -p -e 's/READ COMMITTED/REPEATABLE READ/ig' moodle/lib/adodb/drivers/adodb-ado_mssql.inc.php moodle/lib/adodb/drivers/adodb-pdo_mssql.inc.php moodle/lib/adodb/drivers/adodb-mssqlnative.inc.php moodle/lib/adodb/drivers/adodb-odbc_mssql.inc.php
moodle/lib/adodb/drivers/adodb-ado_mssql.inc.php:
$this->Execute('SET TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/drivers/adodb-pdo_mssql.inc.php:$this->Execute('SET TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/drivers/adodb-mssqlnative.inc.php:$this->Execute('SET TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/drivers/adodb-mysqlt.inc.php:{ READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE }
moodle/lib/adodb/drivers/adodb-mysqlt.inc.php:$this->Execute('SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/drivers/adodb-mysqli.inc.php:$this->Execute('SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/drivers/adodb-odbc_mssql.inc.php:$this->Execute('SET TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/drivers/adodb-pdo_mysql.inc.php:$this->Execute('SET TRANSACTION ISOLATION LEVEL REPEATABLE READ');
moodle/lib/adodb/adodb.inc.php:return 'ISOLATION LEVEL REPEATABLE READ';
moodle/lib/adodb/adodb.inc.php:case 'REPEATABLE READ':
moodle/lib/adodb/adodb.inc.php:return 'ISOLATION LEVEL REPEATABLE READ';
moodle/lib/adodb/adodb.inc.php:case 'REPEATABLE READ':
moodle/lib/adodb/adodb.inc.php:return 'ISOLATION LEVEL REPEATABLE READ';
moodle/lib/dml/mysqli_native_moodle_database.php: $sql = "SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ";
moodle/lib/dml/mssql_native_moodle_database.php: $sql = "SET TRANSACTION ISOLATION LEVEL REPEATABLE READ";
moodle/lib/dml/mssql_native_moodle_database.php: $sql = "BEGIN TRANSACTION"; // Will be using REPEATABLE READ isolation
moodle/lib/dml/sqlsrv_native_moodle_database.php: $sql = "SET TRANSACTION ISOLATION LEVEL REPEATABLE READ";