2013-03-04 14 views
5

Jestem w trakcie nauki Symfony2 dla projektu, który ja i niektórzy znajomi podążamy, i robię samouczek, gdzie robisz bloga w Symfony2 : http://tutorial.symblog.co.uk/docs/doctrine-2-the-blog-model.htmlNie mogę utworzyć połączenia z bazą danych dla Doctrine2 w Symfony2 z MAMP (odmówiono połączenia)

problem

I nie wydają się uzyskać Doctrine2 do pracy. Daję następującą instrukcję do terminalu:

php app/console doctrine:database:create 

I pojawia się następujący komunikat o błędzie:

Nie można utworzyć bazę danych dla związku o nazwie symfony SQLSTATE [HY000] [2002] Połączenie odrzucone

Informacje o systemie

Mam mac, który uruchamia Mountain Lion i używam MAMP.

Co mam zrobić

poszedłem do strony config (http://localhost/NameOfProject/web/config.php) i udał się do miejsca, gdzie można skonfigurować bazę danych. Tam wstawiam ścieżkę, port, użytkownika, hasło, itp. Ze strony startowej MAMP.

Co Próbowałem

blog natknąłem zaproponował, aby utworzyć dowiązanie symboliczne do gniazda MySQL MAMP pomocą następującego polecenia:

sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock mysql.sock 

To nie sprawi, że błąd iść dla mnie daleko.

Niektóre z moich plików w Symfony (jeżeli są istotne)

Od app/config/config.yml:

parameters: 
    database_driver: pdo_mysql 
    database_host: 127.0.0.1 
    database_port: '8889' 
    database_name: symfony 
    database_user: root 
    database_password: root 
    mailer_transport: smtp 
    mailer_host: 127.0.0.1 
    mailer_user: null 
    mailer_password: null 
    locale: en 
    secret: 0408312e2b9861c0c86dbb7488aceec4296054ec 
    database_path: /Applications/MAMP/tmp/mysql/mysql.sock 

Od app/config/parameters.yml:

parameters: 
    database_driver: pdo_mysql 
    database_host: 127.0.0.1 
    database_port: '8889' 
    database_name: symfony 
    database_user: root 
    database_password: root 
    mailer_transport: smtp 
    mailer_host: 127.0.0.1 
    mailer_user: null 
    mailer_password: null 
    locale: en 
    secret: 0408312e2b9861c0c86dbb7488aceec4296054ec 
    database_path: /Applications/MAMP/tmp/mysql/mysql.sock 

rozmowach samouczek aktualizowania database_ * Opcje w pliku parametrów znajdującym się pod adresem app/config/parameters.ini. Jednak nie mam pliku parameters.ini znajdującego się w tym folderze! Tylko parameters.yml.

Edit: Rozwiązanie:

używałem niewłaściwy numer portu dla MySQL. Kiedy użyłem 3306 zadziałało.

+2

Czy na pewno trzeba określić database_path? Również "Odmowa połączenia" sugeruje, że host został znaleziony i nikt nie słucha tego konkretnego portu.Czy twój 'mysql' nasłuchuje na porcie 8889? Standardowy port 'mysql' to 3306 ... –

+0

Dziękuję bardzo, Jperovic, to rozwiązało problem! – Tor

+0

Chyba że coś źle zrozumiałem, jperovic, wydaje się, że twoja odpowiedź została udzielona jako komentarz, a zatem nie mogę oficjalnie "przyjąć" twojej odpowiedzi. Ale i tak bardzo dziękuję !! :) – Tor

Odpowiedz

8

Użyłem złego numeru portu dla MySql. Kiedy użyłem 3306, standardowego portu mysql, zadziałało. (Dziękuję jperovic)

+0

I z Postgres? – sensorario

+0

Dla tych, którzy wciąż nie mogą rozwiązać tego problemu, spróbuj włączyć opcję "Zezwalaj na dostęp sieciowy do MySQL" w ustawieniach MAMP. – Boykodev

Powiązane problemy