我正在尝试将 Symfony2 与 Propel ORM 一起使用来生成要在 MySQL 数据库上运行的 SQL。数据库在端口 3306 上的 VM 上运行。3306 由 virtualbox 转发到 VM,因此可以从外部访问数据库。Symfony2 在 Apache 上运行,Apache 也位于 VM 内部。
当我尝试使用以下方法生成模型类时:
php app/console propel:build
一切正常,这些类在我的项目中可用。但是,当我尝试使用以下方法生成 SQL 时:
php app/console propel:sql:insert --force
我收到一条错误消息:
[REDACTED]/propel1/generator/lib/util/PropelSqlManager.php:259 中的下一个异常 'PDOException' 和消息 'SQLSTATE[HY000] [2006] MySQL server has gone away' 堆栈跟踪:
随后是堆栈跟踪。
我检查了配置和参数 YML 文件,一切都是正确的。当我使用完全相同的凭据测试纯 PHP 连接时,一切正常,我能够对数据库执行 SQL。
关于可能导致这种情况的任何想法?我觉得这可能与 yml 中的不正确字符有关,因为我的密码包含井号 (#)。