PhP с GAE и Google Cloud SQL

Я создаю веб-приложение, используя php для запуска на google app engine. я хочу использовать google cloud sql для хранения данных. я использовал локальный экземпляр MySQL во время разработки. я добавил quercus в свой проект и написал простой php-код для извлечения данных из существующей базы данных mysql. но я получил ошибку ниже, когда запускаю свой php-файл.

D:\workspace\PHPStore\war\info.php:6: Warning: A link to the server could not be established. url=jdbc:mysql://localhost:3306/?characterEncoding=ISO8859_1 driver=com.mysql.jdbc.Driver com.caucho.quercus.QuercusModuleException: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver [mysql_connect] Unable to select database

строка 6 в файле php,

mysql_connect(localhost,$username,$password);

в чем ошибка? как я могу исправить это и получить данные?


person Bishan    schedule 09.04.2012    source источник
comment
Google App Engine позволяет использовать PHP?. Я думал, что они разрешают запускать только Java или Python.   -  person Lobo    schedule 09.04.2012
comment
вы уверены, что mysql находится на той же машине ???   -  person Baba    schedule 09.04.2012
comment
@Lobo, мы не можем запускать php напрямую в Google App Engine. но мы можем запустить php в Google App Engine с помощью quercus.(quercus.caucho.com)   -  person Bishan    schedule 09.04.2012
comment
@Баба, да. mysql находится на той же машине.   -  person Bishan    schedule 09.04.2012
comment
Ошибка указывает на то, что вы не можете выбрать базу данных. Вроде к серверу подключается нормально. Возможно, пользователь, который подключается к базе данных, не имеет разрешений или пользователь не существует.   -  person Lobo    schedule 09.04.2012
comment
Пользователь @Lobo существует, и я предоставил ему все разрешения и привилегии.   -  person Bishan    schedule 09.04.2012
comment
Я думаю, что это может быть ответ wordpress-on-quercus- 2.appspot.com/?p=4#more-4 View V. ВЫПОЛНЕНИЕ SQL-ЗАПРОСОВ В GAE Они действительно умные люди. Желаю, чтобы это было полезно. Удачи!   -  person Nevin Chen    schedule 07.04.2013


Ответы (1)


Cloud SQL не предлагается через соединение через сокет, как обычная база данных MySQL; он доступен через специальный драйвер JDBC для облачного SQL. В результате вы не можете использовать встроенный в PHP mysql API; вы должны использовать коннектор JDBC в Java, как описано здесь.

person Nick Johnson    schedule 11.04.2012