簡體   English   中英

如何使用Doctrine為Symfony2建立數據庫?

[英]How do I set up a database for Symfony2 using Doctrine?

我遵循Symfony的書,到達了有關處理數據庫的章節 我有幾個問題,似乎找不到答案。

我只是遵循我看起來像這樣的parameters.yml文件(自動生成)

parameters:
    database_driver: pdo_mysql
    database_host: 127.0.0.1
    database_port: null
    database_name: myproject
    database_user: root
    database_password: null
    mailer_transport: smtp
    mailer_host: 127.0.0.1
    mailer_user: null
    mailer_password: null
    locale: en
    secret: ThisTokenIsNotSoSecretChangeIt
    debug_toolbar: true
    debug_redirects: false
    use_assetic_controller: true

然后我前往終端並輸入:

php app/console doctrine:database:create

我收到以下錯誤:

Could not create database for connection named `myproject`
SQLSTATE[HY000] [2002] Connection refused

我有幾個問題:

  • 我該如何解決
  • 數據庫服務器在哪里? 當我在Composer上安裝Symfony2時出現了嗎?

經過長時間的搜索,我找到了它。 如注釋中所指出的,它與mysql.default_socket有關。

MAMP告訴我插座是

':/Applications/MAMP/tmp/mysql/mysql.sock'

經過更多搜索后,我發現可以在config.yml中設置套接字,這里:

doctrine:
  dbal:
    driver:   "%database_driver%"
    [...]
    unix_socket: "/Applications/MAMP/tmp/mysql/mysql.sock"
    [...]

如果unix_socket行不存在,則添加它。 然后嘗試在Terminal中執行相同的命令,結果如下:

Created database for connection named `myproject`

數據庫是真正創建的。

Symfony不會安裝mysql,我假設您正在使用燈泡堆棧。

如果我沒記錯的話,那是我一次,所以我將database_host:127.0.0.1更改為localhost,此后運行良好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM