2013-11-26 7 views
26

이것은 간단한 질문입니다. 많은 사람들이 이것을 묻지는 않지만 단순히 laravel로 localhost phpmyadmin을 통해 mySql에 연결하는 방법을 간단히 설명합니다. (필자는 검색했지만 물건이 몇 가지 있습니다. 저는 멍청한 사람이고 물어보고 싶습니다. 제가 본 것을 100 % 얻지 못했거나 시도했지만 도움이되지 않았습니까?) 내가 laravel에 새로운laravel을 사용하여 mysql에 연결하는 방법은 무엇입니까?

backbone.js 작업과 생각하고, 나는 내가 데이터베이스를 정의 할 수있을 것으로 예상

c:\wamp\www\laravel-project> php artisan migrate:make create_tasks_table --table tasks --create 

그리고

c:\wamp\www\laravel-project> php artisan migrate 

을 시도 C:\wamp\www\laravel-project

내부 laravel 설치 정보, 내가 C:\wamp\www\laravel-project\app\config\database.php을 체크하고 그것이 올바른지, MySQL은 기본값으로 설정되어 있습니다 'root'은 사용자 이름이고 ''는 비어있는 암호입니다.

내가 php artisan migrate을 실행 한 후 얻을 명령 줄에서 오류가 과정은 phpMyAdmin에와 MySQL을 포함 그것을 내 로컬 호스트 서버의 I 윈도우 8 및 WAMP를 사용하고

[PDOException] 
SQLSTATE[HY000] [1049] Unknown database 'database'  

입니다. 그래서 mySql을 사용할 수있는 방법이 많을 것이라고 확신하지만 laravel과 phpmyadmin을 올바르게 설정하고 있다고 생각하지 않습니다.

그래서 어떤 통찰력도 놀랍고 쉬운 점이 될 것입니다.

편집 :

는 사실을 통해이 생각은 어쩌면 내가 나를 그렇게 해보자 database라는 이름의 데이터베이스를 작성해야합니다. 곧 돌아올거야. 좋아요, 제 질문에 답변 해 드리거나 누군가가이 주제를 검색하는 경우에 ... KEYC:\wamp\www\laravel-project\app\config\database.php에 정의 된 데이터베이스가 phpmyadmin에있는 데이터베이스와 일치하는지 확인하십시오. 아무 생각조차!

답변

25

Laravel을 사용하면 app/config/database.php을 통해 데이터베이스 연결을 매우 쉽게 관리 할 수 ​​있습니다.

언급 한대로 '데이터베이스'라는 데이터베이스를 찾고 있습니다. 이것은 데이터베이스 구성 파일의 기본 이름이기 때문입니다.당신이 연결하고 싶은

데이터베이스의 이름
'mysql' => array(
    'driver' => 'mysql', 
    'host'  => 'localhost', 
    'database' => 'database', <------ Default name for database 
    'username' => 'root', 
    'password' => '', 
    'charset' => 'utf8', 
    'collation' => 'utf8_unicode_ci', 
    'prefix' => '', 
), 

변경이 이것을 좋아합니다 :이 올바르게 구성했으면

'mysql' => array(
    'driver' => 'mysql', 
    'host'  => 'localhost', 
    'database' => 'my_awesome_data', <------ change name for database 
    'username' => 'root',   <------ remember credentials 
    'password' => '', 
    'charset' => 'utf8', 
    'collation' => 'utf8_unicode_ci', 
    'prefix' => '', 
), 

당신은 쉽게 데이터베이스에 액세스 할 수 있습니다!

해피 코딩!

+0

이것은 정답입니다. – echochamber

+0

helloo gerobk sir이 파일에서 몇 가지 변경을했지만 연결할 수 없습니다 –

+1

현재 5. * 버전 솔루션은 아래를 참조하십시오. – Chris

0

. PHPMyAdmin을 입력하고 거기에서 해보십시오.

편집 : 확실히 Maulik의 답변으로 가지 마세요. mysql_ extenstion (일반적으로 나쁜 습관으로 알려져있는)뿐만 아니라 Laravel도 PDO를 사용하여 연결을 관리합니다.

4

app/config/database.php 파일 자체를 수정하지 않는 것이 훨씬 더 좋습니다 ... 그렇지 않으면 .env 파일을 수정하고 거기에 DB 정보를 입력하십시오.

주 (.env 파일 Laravel 5에서 사용할 수 있습니다, 확실하지가 이전 버전 ...에 있던 경우) : 물론 당신이 이미 가지고있는 app/config/database.php 파일에서 기본 데이터베이스 연결로 mysql을 설정해야합니다.

+0

MYSQL에서 작동하는 .env 파일을 수정하고 싶습니다. – JavaFan

45

는 Laravel 5에서는이 .env 파일,

그것은이 .env.sample입니다 있습니다 .env의 그 편집

APP_ENV=local 
APP_DEBUG=true 
APP_KEY=YOUR_API_KEY 

DB_HOST=YOUR_HOST 
DB_DATABASE=YOUR_DATABASE 
DB_USERNAME=YOUR_USERNAME 
DB_PASSWORD=YOUR_PASSWORD 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

MAIL_DRIVER=smtp 
MAIL_HOST=mailtrap.io 
MAIL_PORT=2525 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 

같은에서 만들려고 보이는이 그 그런 경우. env 파일을 찾았습니다.

+5

Laravel 5 이후로 새로운 대답이되어야합니다! –

1

나는 이것을 알아 내기 위해 많은 시간을 보냈습니다. 마지막으로 개발 서버를 종료하고 다시 부팅 해 보았습니다. 실망스럽게도, 이것은 나를 위해 일했습니다. Laravel 5에서 .env 파일을 편집 한 후 서버를 종료하고 php artisan serve을 다시 실행해야한다는 결론에 도달했습니다.

관련 문제