mysqlnd_ms Config File Fails with “unexpected '{' ”-Collection of common programming errors

I’m trying to get the mysqlnd_ms (master_slave) plugin to run, but receive the error that the config file contains and unexpected bracket. To make sure I didn’t corrupt anything, I replicated this error on a fresh install. Both installs are Ubuntu 12.04-LTS using the packaged PHP-5.3.10 and are running through Apache’s module. Because the php5-dev package does not contain the headers for mysqlnd, I had to jump through some hoops to get PECL to install the package.

I am following the guide from MySQL’s website 20.7.6.4. Quickstart and Examples

Here is the error I am seeing:

root@mysqlndms:~# php -v
PHP:  syntax error, unexpected '{' in /etc/php5/cli/conf.d/mysqlnd_ms_plugin.ini on line 1
PHP 5.3.10-1ubuntu3.6 with Suhosin-Patch (cli) (built: Mar 11 2013 14:34:31)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
root@mysqlndms:~#

And this is the contents of the .ini file:

root@mysqlndms:~# cat /etc/php5/cli/conf.d/mysqlnd_ms_plugin.ini
{
    "myapp": {
        "master": {
            "master_0": {
                "host": "localhost"
            }
        },
        "slave": [

        ]
    }
}
root@mysqlndms:~#

This .ini file is copied straight from MySQL’s tutorial.

For completeness, here are the hoops I had to jump through to get the PECL package to build:

cd /usr/local/src/
apt-get source php5
cd php5-5.3.10/ext/
cp -a mysqlnd/ /usr/include/php5/ext/
cd /usr/local/src/php5-5.3.10/ext/mysqlnd/
mv config9.m4 config.m4
sed -ie "s{ext/mysqlnd/php_mysqlnd_config.h{config.h{" mysqlnd_portability.h
phpize
cp -a mysqlnd_portability.h /usr/include/php5/ext/mysqlnd/
pecl install mysqlnd_ms

I am really at a loss as where to go from here and would love a gentle push in the right direction. I’m not afraid to compile from source, but would really like to use the packages if at all possible.

Thanks!