Php 我无法在symfony 1.0中连接MySQL数据库
我使用symfony1.0.22。在本地主机上,在MAMP上。 和阿斯基特一起学习,我不能动 我无法连接mySQL数据库… 它说没有这样的文件或目录。 我不明白它在说什么 日志在下面。请告诉我我能做什么Php 我无法在symfony 1.0中连接MySQL数据库,php,database,symfony1,mamp,propel,Php,Database,Symfony1,Mamp,Propel,我使用symfony1.0.22。在本地主机上,在MAMP上。 和阿斯基特一起学习,我不能动 我无法连接mySQL数据库… 它说没有这样的文件或目录。 我不明白它在说什么 日志在下面。请告诉我我能做什么 > symfony propel-insert-sql > >> schema converting "/Applications/MAMP/..._fail/config/schema.yml" to XML > >> s
> symfony propel-insert-sql
> >> schema converting "/Applications/MAMP/..._fail/config/schema.yml" to XML
> >> schema putting /Applications/MAMP/htdo...ail/config/generated-schema.xml Buildfile:
> /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build.xml
> [resolvepath] Resolved /Applications/MAMP/htdocs/hatch/sf_fail/config
> to /Applications/MAMP/htdocs/hatch/sf_fail/config
>
> propel-project-builder > check-project-or-dir-set:
>
> propel-project-builder > check-project-set:
>
> propel-project-builder > set-project-dir:
>
> propel-project-builder > check-buildprops-exists:
>
> propel-project-builder > check-buildprops-for-propel-gen:
>
> propel-project-builder > check-buildprops:
>
> propel-project-builder > configure:
> [echo] Loading project-specific props from /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini [property]
> Loading /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
>
> propel-project-builder > insert-sql:
> [phing] Calling Buildfile '/Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml'
> with target 'insert-sql' [property] Loading
> /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/./default.properties
>
> propel > insert-sql: [propel-sql-exec] Executing statements in file:
> /Applications/MAMP/htdocs/hatch/sf_fail/data/sql/lib.model.schema.sql
> [propel-sql-exec] Our new url -> mysql://root:root@localhost/iii
> Execution of target "insert-sql" failed for the following reason:
> /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml:296:1:
> [wrapped: connect failed [Native Error: No such file or directory]
> [User Info: Array]]
> [phing] /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml:296:1:
> [wrapped: connect failed [Native Error: No such file or directory]
> [User Info: Array]]
>
> BUILD FINISHED
>
> Total time: 0.3183 seconds
> >> file- /Applications/MAMP/htdocs/hatch...ail/config/generated-schema.xml
p.S.和propel.ini如下所示
> propel.targetPackage = lib.model
> propel.packageObjectModel = true
> propel.project = sf_fail
> propel.database = mysql
> #propel.database.createUrl = mysql://root:root@localhost/
> propel.database.url = mysql://root:root@localhost/sf_fail
>
> propel.addGenericAccessors = true
> propel.addGenericMutators = true
> propel.addTimeStamp = false
>
> propel.schema.validate = false
> propel.mysql.tableType = InnoDB
>
> ; directories
> propel.home = .
> propel.output.dir = /var/www/symfony/sf_fail
> propel.schema.dir = ${propel.output.dir}/config
> propel.conf.dir = ${propel.output.dir}/config
> propel.phpconf.dir = ${propel.output.dir}/config
> propel.sql.dir = ${propel.output.dir}/data/sql
> propel.runtime.conf.file = runtime-conf.xml
> propel.php.dir = ${propel.output.dir}
> propel.default.schema.basename = schema
> propel.datadump.mapper.from = *schema.xml
> propel.datadump.mapper.to = *data.xml
>
> ; builder settings
> propel.builder.peer.class = addon.propel.builder.SfPeerBuilder
> propel.builder.object.class = addon.propel.builder.SfObjectBuilder
>
> propel.builder.objectstub.class = addon.propel.builder.SfExtensionObjectBuilder
> propel.builder.peerstub.class = addon.propel.builder.SfExtensionPeerBuilder
> propel.builder.objectmultiextend.class = addon.propel.builder.SfMultiExtendObjectBuilder
> propel.builder.mapbuilder.class = addon.propel.builder.SfMapBuilderBuilder
> propel.builder.interface.class = propel.engine.builder.om.php5.PHP5InterfaceBuilder
> propel.builder.node.class = propel.engine.builder.om.php5.PHP5NodeBuilder
> propel.builder.nodepeer.class = propel.engine.builder.om.php5.PHP5NodePeerBuilder
> propel.builder.nodestub.class = propel.engine.builder.om.php5.PHP5ExtensionNodeBuilder
> propel.builder.nodepeerstub.class = propel.engine.builder.om.php5.PHP5ExtensionNodePeerBuilder
>
> propel.builder.addIncludes = false
> propel.builder.addComments = false
>
> propel.builder.addBehaviors = false
我在遇到这个问题之前做了什么
通过pear在/Applications/MAMP/bin/php5/lib/php/中安装symfony1.0.22
$ sudo ln -s /Applications/MAMP/bin/php5/bin/pear /usr/bin/pear
$ pear upgrade PEAR
$ pear channel-discover pear.symfony-project.com
$ pear install symfony-1.0.22
$ sudo ln -s -f /Applications/MAMP/bin/php5/bin/symfony /usr/bin/symfony
我在/Application/MAMP中创建了名为“sf_fail”的dir
$cd /Application/MAMP/sf_fail
$symfony init-project sf_fail
$symfony init-app frontend
接下来,我编辑shema.yml、database.yml、spreep.ini以创建DB。我用MAMP的phpMyAdmin制作了数据库,名为“sf_fail”
$symfony propel-build-model
$symfony propel-build-sql
我认为,在命令下达之前没有问题
$symfony propel-insert-sql
这不能移动嗯。。。
我刚刚添加了propel build all的结果以获取更多信息
> symfony propel-build-all
> >> schema converting "/Applications/MAMP/..._fail/config/schema.yml" to XML
> >> schema putting /Applications/MAMP/htdo...ail/config/generated-schema.xml
> Buildfile: /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build.xml
> [resolvepath] Resolved /Applications/MAMP/htdocs/hatch/sf_fail/config to
> /Applications/MAMP/htdocs/hatch/sf_fail/config
>
> propel-project-builder > check-project-or-dir-set:
>
> propel-project-builder > check-project-set:
>
> propel-project-builder > set-project-dir:
>
> propel-project-builder > check-buildprops-exists:
>
> propel-project-builder > check-buildprops-for-propel-gen:
>
> propel-project-builder > check-buildprops:
>
> propel-project-builder > configure:
> [echo] Loading project-specific props from /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
> [property] Loading /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
>
> propel-project-builder > om:
> [phing] Calling Buildfile '/Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml'
> with target 'om'
> [property] Loading /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/./default.properties
>
> propel > check-run-only-on-schema-change:
>
> propel > om-check:
>
> propel > om:
> [echo] +------------------------------------------+
> [echo] | |
> [echo] | Generating Peer-based Object Model for |
> [echo] | YOUR Propel project! (NEW OM BUILDERS)! |
> [echo] | |
> [echo] +------------------------------------------+
> [phingcall] Calling Buildfile '/Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml'
> with target 'om-template'
> [property] Loading /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/./default.properties
>
> propel > om-template:
> [PHP Error] strftime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting
> or the date_default_timezone_set() function. In case you used any of
> those methods and you are still getting this warning, you most likely
> misspelled the timezone identifier. We selected 'Asia/Tokyo' for
> 'JST/9.0/no DST' instead [line 539 of
> /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/classes/propel/phing/AbstractPropelDataModelTask.php]
> [propel-om] Target database type: mysql
> [propel-om] Target package: lib.model
> [propel-om] Using template path: /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/templates
> [propel-om] Output directory: /Applications/MAMP/htdocs/hatch/sf_fail
> [propel-om] Processing: generated-schema.xml
> [propel-om] Processing Datamodel : JoinedDataModel
> [propel-om] - processing database : propel
> [propel-om] + user
> [propel-om] -> BaseUserPeer [builder: SfPeerBuilder]
> [propel-om] -> BaseUser [builder: SfObjectBuilder]
> [propel-om] -> UserMapBuilder [builder: SfMapBuilderBuilder]
> [propel-om] -> (exists) UserPeer
> [propel-om] -> (exists) User
> [propel-om] + tag
> [propel-om] -> BaseTagPeer [builder: SfPeerBuilder]
> [propel-om] -> BaseTag [builder: SfObjectBuilder]
> [propel-om] -> TagMapBuilder [builder: SfMapBuilderBuilder]
> [propel-om] -> (exists) TagPeer
> [propel-om] -> (exists) Tag
> [propel-om] + photo
> [propel-om] -> BasePhotoPeer [builder: SfPeerBuilder]
> [propel-om] -> BasePhoto [builder: SfObjectBuilder]
> [propel-om] -> PhotoMapBuilder [builder: SfMapBuilderBuilder]
> [propel-om] -> (exists) PhotoPeer
> [propel-om] -> (exists) Photo
> [propel-om] + idle
> [propel-om] -> BaseIdlePeer [builder: SfPeerBuilder]
> [propel-om] -> BaseIdle [builder: SfObjectBuilder]
> [propel-om] -> IdleMapBuilder [builder: SfMapBuilderBuilder]
> [propel-om] -> (exists) IdlePeer
> [propel-om] -> (exists) Idle
>
> BUILD FINISHED
>
> Total time: 1.5223 second
> >> file- /Applications/MAMP/htdocs/hatch...ail/config/generated-schema.xml
> >> schema converting "/Applications/MAMP/..._fail/config/schema.yml" to XML
> >> schema putting /Applications/MAMP/htdo...ail/config/generated-schema.xml
> Buildfile: /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build.xml
> [resolvepath] Resolved /Applications/MAMP/htdocs/hatch/sf_fail/config to
> /Applications/MAMP/htdocs/hatch/sf_fail/config
>
> propel-project-builder > check-project-or-dir-set:
>
> propel-project-builder > check-project-set:
>
> propel-project-builder > set-project-dir:
>
> propel-project-builder > check-buildprops-exists:
>
> propel-project-builder > check-buildprops-for-propel-gen:
>
> propel-project-builder > check-buildprops:
>
> propel-project-builder > configure:
> [echo] Loading project-specific props from /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
> [property] Loading /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
>
> propel-project-builder > sql:
> [phing] Calling Buildfile '/Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml'
> with target 'sql'
> [property] Loading /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/./default.properties
>
> propel > check-run-only-on-schema-change:
>
> propel > sql-check:
>
> propel > pgsql-quoting-check:
>
> propel > sql:
> [echo] +------------------------------------------+
> [echo] | |
> [echo] | Generating SQL for YOUR Propel project! |
> [echo] | |
> [echo] +------------------------------------------+
> [phingcall] Calling Buildfile '/Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml'
> with target 'sql-template'
> [property] Loading /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/./default.properties
>
> propel > sql-template:
> [propel-sql] Processing: generated-schema.xml
> [propel-sql] Writing to SQL file: /Applications/MAMP/htdocs/hatch/sf_fail/data/sql/lib.model.schema.sql
> [propel-sql] + user [builder: MysqlDDLBuilder]
> [propel-sql] + tag [builder: MysqlDDLBuilder]
> [propel-sql] + photo [builder: MysqlDDLBuilder]
> [propel-sql] + idle [builder: MysqlDDLBuilder]
>
> BUILD FINISHED
>
> Total time: 0.3328 seconds
> >> file- /Applications/MAMP/htdocs/hatch...ail/config/generated-schema.xml
> >> schema converting "/Applications/MAMP/..._fail/config/schema.yml" to XML
> >> schema putting /Applications/MAMP/htdo...ail/config/generated-schema.xml
> Buildfile: /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build.xml
> [resolvepath] Resolved /Applications/MAMP/htdocs/hatch/sf_fail/config to
> /Applications/MAMP/htdocs/hatch/sf_fail/config
>
> propel-project-builder > check-project-or-dir-set:
>
> propel-project-builder > check-project-set:
>
> propel-project-builder > set-project-dir:
>
> propel-project-builder > check-buildprops-exists:
>
> propel-project-builder > check-buildprops-for-propel-gen:
>
> propel-project-builder > check-buildprops:
>
> propel-project-builder > configure:
> [echo] Loading project-specific props from /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
> [property] Loading /Applications/MAMP/htdocs/hatch/sf_fail/config/propel.ini
>
> propel-project-builder > insert-sql:
> [phing] Calling Buildfile '/Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml'
> with target 'insert-sql'
> [property] Loading /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/./default.properties
>
> propel > insert-sql:
> [propel-sql-exec] Executing statements in file: /Applications/MAMP/htdocs/hatch/sf_fail/data/sql/lib.model.schema.sql
> [propel-sql-exec] Our new url -> mysql://root:root@localhost/sf_fail
> Execution of target "insert-sql" failed for the following reason:
> /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml:296:1:
> [wrapped: connect failed [Native Error: No such file or directory]
> [User Info: Array]]
> [phing] /Applications/MAMP/bin/php5/lib/php/symfony/vendor/propel-generator/build-propel.xml:296:1:
> [wrapped: connect failed [Native Error: No such file or directory]
> [User Info: Array]]
>
> BUILD FINISHED
>
> Total time: 0.1648 seconds
> >> file- /Applications/MAMP/htdocs/hatch...ail/config/generated-schema.xml
可以肯定的是,捆绑版1.2中的一些错误消息可能更有用。它也不使用PDO,因此比最新版本慢得多。我建议您至少升级到Symfony 1.3,它安装了更好的Propel版本 @richsage建议使用Symfony 1.4,但在我看来,强制执行的表单系统过于复杂。Symfony 1.3也有它,但至少在那里你可以切换到10兼容模式,我完全忘了它叫什么——这让你回到组件助手方法。此外,通过添加插件,您可以在Symfony 1.3或1.4中将您的推进版本升级到1.6版本。类似问题 在一个旧的Symfony1项目工作时遇到了完全相同的问题,对我有效的修复方法是将databases.yml从:-
mysql://root:@localhost/database_name_here
到
根本的问题是,最初的开发环境是在Windows上安装的,而我的开发环境是在Mac上。对于您来说,情况可能不一样,但希望能够帮助他人解决问题,搜索此错误Symfony 1.0已经过时了。如果您需要从Symfony开始,可以使用支持到2012年11月的1.4稳定版,或者最好改用Symfony2。另外,请在“propel 1.2无此文件或目录”周围进行一些web搜索。感谢您提供的额外信息,尽管如果将其分为几个块,会更有意义。我上面链接中的建议有帮助吗?这里有很多建议。>richsage thx用于编辑!!但我不明白…答案是thx!但我必须在Symfony 1.0.22上完成,因为我的公司使用1.0。。。XOK;您能将您的spreep.ini的内容添加到问题中吗?另外,请告诉我们在此之前您使用过哪些其他命令。不要忘记,如果您在内部受到“我们只使用软件X”规则的限制,作为开发人员,您有责任提出升级的理由。没有人会为你需要的技术改变游说对不起,我不能很好地使用这个系统。。。我只需要添加新信息,没问题。请记住,无论它是什么,它都不会在Propel 1.2或Symfony 1.0中得到修复-它们都已经超出了维护周期。
mysql://root:@localhost/database_name_here
mysql://root:@127.0.0.1/database_name_here