Symfony propel:使用指定用户插入sql?
我在 Ubuntu Lucid 上运行 Symfony 1.3.6。
出于安全原因,我的 Symfony 数据库连接是由权限较低的用户建立的(例如不需要 CREATE 或 DROP)。
我希望能够以 root 身份运行 propel 任务 propel:sql-insert ,以便我可以随意创建/删除表。执行此操作的最佳方法是修改 config/database.yml 并在我需要运行此任务时使用 root 名称和 pwd。
更聪明的方法是我可以将用户传递给 import-sql 任务。有人知道该怎么做吗?
I am running Symfony 1.3.6 on Ubuntu Lucid.
My db connections for Symfony are made with a user with reduced priveleges (no need for CREATE or DROP for example) - for security reasons.
I want to be able to run the propel task propel:sql-insert as root, so that I can create/drop tables at will. The brain dead way to do this would be to modify config/database.yml and use a root name and pwd whenever I need to run this task.
A smarter way would be if I could pass a user to the import-sql task. Anyone knows how to do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我这里没有1.3;而不是 1.4,但是查看一下 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelInsertSqlTask.class.php (唷!)会产生以下您可以传递的参数 - 大概是1.3 相同:
因此,这意味着您可以在 config/databases.yml 中创建一个特定于 insert-sql 任务的新连接(例如用户名 root,无密码),然后传递此连接名称当您运行 insert-sql 任务时。
未经测试...:-)
I don't have 1.3 here; rather 1.4, but taking a look inside
lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelInsertSqlTask.class.php
(phew!) yields the following parameter you can pass - presumably the same for 1.3:Therefore this would imply that you can create a new connection in your
config/databases.yml
which is specific to the insert-sql task (eg username root, no password), and then pass this connection name along when you run the insert-sql task.Untested... :-)