본문으로 바로가기

MYSQL SECTION: "ROOT" PASSWORD

Quick start에서 migrate를 따라하려다가 mysql 설정이 필요했다.

아이러니하게 설정? 이라기보단... 어이없는 warning들로 역시나 해맸다ㅋㅋㅋㅋㅋ

진짜 아는게 뭐냐 난...

역시나 나중에 까먹을 날위해, 혹여나 해맬 왕초보들을 위해 정리한다.


참고사이트

http://dev.mezeet.com/post/%EB%9D%BC%EB%9D%BC%EB%B2%A8-%ED%80%B5%EC%8A%A4%ED%83%80%ED%8A%B8/


[ XAMPP mysql 설정하기 ]


(이부분은 다른 XAMPP 설치 과정에서도 기본적으로 설명이 잘 되있는 부분이다.)

우선 XAMPP에서 mysql을 start한 후 시작해야한다.

그리고 http://localhost/xampp/에 들어가 security를 확인하면 

 이 굉장히 많이 보인다. 

root와 내 계정을 만들어 비밀번호를 지정을 해야하기 때문인데, 이때 주의할 점은 root에는 비밀번호를 잘 기억해두자. 나중에 laravel database에 세팅을 할때 사용된다.

페이지의 중간 부분에 보면 다음과같은 링크가 있다. 클릭해서 들어가면

USER의 비밀번호는 생성하고 root와 user 계정을 만드는 곳이 있다.

USER는  XAMPP DIRECTORY PROTECTION (.htaccess)부분인데 본인 마음데로 아이디와 비밀번호 지정한 후 make safe the XAMPP directory한다.


MYSQL SECTION: "ROOT" PASSWORD부분인데 건드리지 말자!


다시 http://localhost/security/index.php로 돌아오면 가 SECURE로 꾀 많이 바껴있다.

이 외에 UNSECURE는 무시해도 된다.


XAMPP에서 mysql 관리는

http://localhost/phpmyadmin/ 에 들어가서 사용하면 된다.






1. magration 생성

: cmd창에서 laravel을 설치한 폴더로 이동 (c:\xampp\htdocs\laravel)

  한후 다음 명령어 실행

php artisan migrate:make create_users_table


위와 같은 명령어를 실행하면 app/database/migrations안에 생성날짜_create_users_table.php이 생성된다.

use Illuminate\Database\Migrations\Migration;

class CreateUsersTable extends Migration {

	/**
	 * Run the migrations.
	 *
	 * @return void
	 */
	public function up()
	{

        Schema::create('users', function($table)
        {
            //
        });
	}

	/**
	 * Reverse the migrations.
	 *
	 * @return void
	 */
	public function down()
	{
        //
	}

}
그리고 파일을 열어보면 다음과같은 소스코드가 자동으로 생성


funtion up에는 다음을 추가해보자.

$table->increments('id');
$table->string('email')->unique();
$table->string('name');
$table->timestamps();
그리고 function down에는 다음을 추가한다.
Schema::drop('users');
그리고 다음 명령어 실행
php artisan migrate


이때 위에서 xampp mysql 설정하기에서 root에 비밀번호를 잘 기억하라고 했었다. 이게 그 이유.

Access denied for user 'root'@'localhost'(using password: NO)라는 에러가 뜨거나

또는 Unknown database 'database'라는 에러가 뜬다면 다음을 참고하자.


이부분 또한 migrate를 실습해볼때 중요한 부분이다.


migrate 하기전에 laravel에서도 세팅을해야했는데

app\config\databes.php들어가면 55번째 라인 또는 mysql 검색하다보면

'mysql' => array(
			'driver'    => 'mysql',
			'host'      => 'localhost',
			'database'  => 'database',
			'username'  => 'root',
			'password'  => '',
			'charset'   => 'utf8',
			'collation' => 'utf8_unicode_ci',
			'prefix'    => '',
		),

부분이 있는데 이 부분에서 database = 'database'를 보면 laravel에서는 자동으로 연결할 데이터베이스 명을 database라고 지정되어있고

root의 비밀번호 부분도 위에 xampp mysql설정할 때 root의 비밀번호도 지정했을 때 잘기억해놓으라는 그 부분! 두 워닝 모두여기서 수정하면 되는거였다...


여튼, 내가 실습해보고 싶은 database명은 test였고 내 mysql에는 database라는 데이터베이스가 없었다.

따라서 database = 'test'라고 수정하고 다시  php artisan migrate하니 드디어 결과물을 확인할 수 있었다.





다음 페이지를 가면 동강으로 migration에 대해 좀 더 자세히 잘 설명을 한다...

https://tutsplus.com/lesson/running-migrations/


뭔가 포스팅하고나니깐 정리도 안되있고 주절주절 뒤죽박죽

그냥 내 삽질 스토리 정리한거 같다 ㅋㅋㅋㅋㅋㅋ


다음에 다시해보고 이쁘게 잘 정리해야지


오늘은 여기까지 뿅




댓글을 달아 주세요

  1. Favicon of https://88240.tistory.com BlogIcon shaking shaking 신고">2014.03.18 00:02 신고

    php artisan migrate:make create_users_table --table=users 한다음에 $table->increments('id'); ... 를 up에 넣을 수 있음

  2. Favicon of https://88240.tistory.com BlogIcon shaking shaking 신고">2014.03.18 00:03 신고

    <?php

    use Illuminate\Database\Schema\Blueprint;
    use Illuminate\Database\Migrations\Migration;

    class CreatePostsTable extends Migration {

    /**
    * Run the migrations.
    *
    * @return void
    */
    public function up()
    {
    Schema::create('posts', function(Blueprint $table)
    {
    $table->increments('id');
    $table->string('title');
    $table->text('body');
    });
    }

    /**
    * Reverse the migrations.
    *
    * @return void
    */
    public function down(Blueprint $table)
    {
    Schema::drop('posts');
    }

    }