2015-04-16 3 views
1

Я тестирую Lumen, и я установил соединение с базой данных через файл .env. В Laravel мне нужно установить параметр unix_socket локально, который я делаю в конфигурации базы данных. К сожалению, Lumen, похоже, настраивает базу данных только через .env-файл. Есть ли способ установить параметр unix_socket в файле .env?Установка unix_socket в Lumen

Или есть альтернативный способ сделать это?

Спасибо.

ответ

1

Один из способов обойти эту проблему, которая работает для меня, чтобы изменить DB_HOST в файле .env от

DB_HOST=localhost 

в

DB_HOST=XXX.XXX.XXX.XXX 

... где xxx.xxx.xxx.xxx заменяется вашим локальным IP-адресом сервера MySQL (например, 127.0.0.1), тем самым устраняя необходимость в unix_socket.

+1

Boom! Спасибо! – Damien

+0

Для downvoters: Пожалуйста, оставьте комментарий, по крайней мере, о том, почему вы делаете downvoting. Спасибо. –

+0

Это не использует сокет, хотя ... Это просто подключение через TCP локально. – Nick

3

Вам нужно будет установить значение конфигурации вручную. Например, в bootstrap/app.php, как это:

$app['config']->set('database.connections.mysql.unix_socket', 'asdf'); 

Или вы можете сделать то же самое в поставщика услуг, это до вас.

+0

Спасибо за ответ, к сожалению, это не сработало, но вы указали мне в правильном направлении. Вы можете создавать свои собственные файлы конфигурации (например, app/config/database.php), которые перезаписывают значения по умолчанию, поэтому я это сделал. – Damien

+0

А я этого не знал. Мое решение, вероятно, не работает, потому что слишком поздно в это время установить значение ... Я позже обновлю ответ или не стесняюсь добавить свой ответ, если хотите: – lukasgeiter

Смежные вопросы