2016-05-16 2 views
0

Я новичок как для Laravel, так и для PHP. Теперь я хочу связать проект Laravel с базой данных Mysql. Я использую os x 10.10, и я уже установил homestead и vagrant. Но когда я ввожу which mysql в командной строке, сказано, что mysql not found. Предполагается, что база данных mysql будет включена в пакет усадьбы. Но почему нельзя найти mysql? Как я могу связать свой проект с mysql db и как я могу убедиться, что я успешно это сделал? Заранее спасибо!Mysql не найден, даже установлена ​​Laravel-Homestead

ответ

2

Если я правильно думаю, вы пытаетесь найти MySQL на ваш физической машины, когда он фактически установлен на вашем виртуальной машины. Сначала вам нужно подключиться к Homestead через ssh, чтобы сделать which mysql. Так что в вашем терминале сделать:

  1. homestead up
  2. homestead ssh
  3. which mysql

Вы можете прочитать больше о Ферме в документации documentation. Также вы можете прочитать wiki article, чтобы не отставать от концепции виртуальной машины.

Чтобы создать новую базу данных внутри Ферме вы просто должны найти вам Homestead.yaml файл (как правило, путь ~/.homestead/Homestead.yaml) и добавить имя вам базы данных в разделе базы данных:

databases: 
    - homestead 
    - your_new_database_name 

Затем вы должны предоставить Усадебную машину homestead provision. После этого базы данных будут созданы и единственное, что вам придется сделать ссылку на него от вас проекты .env файл (находится в корневом каталоге вашего проекта Laravel):

DB_HOST=localhost 
DB_DATABASE=your_new_database_name 
DB_USERNAME=homestead 
DB_PASSWORD=secret 

Это должны сделать это. Laravels documentation regarding database действительно замечательный. Обычно вы можете найти там все, что вам нужно. Я думаю, вам нужно будет создать некоторые миграции для создания схемы для ваших баз данных. Это тоже covered there.

+0

Спасибо за ваш ответ. Ваша догадка правильная. Но я уже использовал бродягу, чтобы загрузить vm. Должен ли я использовать дом? – user5779223

+0

Тогда вы можете попробовать сделать «homestead ssh» в своем терминале. И я думаю, что нет никакого вреда, чтобы снова «устроиться», худшее, что он может сделать, это сказать вам, что машина, которую вы пытаетесь запустить, уже запущена. – sevavietl

+0

Он работает! Тонны благодарности! – user5779223