I just ran through the installation again to properly document exactly what I'm doing here, rather than trying to explain it from memory. I've deleted and re-uploaded all the files, and dropped and recreated the database. This is a fresh install from scratch.
First, I browse to /installer/. The first step opens (check environment). Everything says OK except for a few databases (PostgreSQL, SQLite (v2), SQL Server (SQLSRV) and SQL Server (DBLIB)). I will be using MySQL, which says OK, so that should be fine. I click next.
The second step opens (create config). The only settings I change are filling in the database, IMAP and STMP settings. I click create config, download the two files with the links provided, then upload them to the webserver in the config directory. I click continue.
The third step opens (test config). Under "Check DB config", it says the DSN (write) is OK, but the DB Schema is not initialized. I click the initialize database button. It loads for a while, then times out. I refresh the current page (/installer/index.php?_step=3) - it times out once again. I attempt to restart the install process by browsing to /installer/ - this times out too.
There are no messages in the error log (I did get some yesterday, mentioned above, but I wasn't able to reproduce that tonight). I check the database, the tables have been created. The actual database initialization doesn't seem to be failing, the installer is just hiccupping at that point. Any ideas?