728x90

MySQL을 처음 실행하면 Database를 만드는게 모든 일의 시작이다.

모든 RDBMS는 먼저 데이터베이스를 만들고, 그 데이터베이스를 테이블(릴레이션)으로 채워나간다.

그러면 MySQL에서 데이터베이스를 만드려면 어떻게 해야할까?


create database <db명>;


일반적으로 db들은 대소문자를 가리지 않으므로 create를 CREATE나 Create등으로 써도 무방하다.

위 명령어를 사용하면 database를 선택할 수 있다.

그리고 현재 내가 무슨 db를 선택했는지 확인하고 싶다면 아래의 명령어를 사용하면 된다.



select database();


이 명령어는 현재 내가 어떤 database를 선택해서 작업을 하고 있는지를 확인할 수 있다.

만약 선택한 db가 없다면 null이 반환된다.



만약 db를 선택했다면 해당 db가 반환된다.

db를 사용하려면 아래 명령어를 사용한다.


use <db명>;



보면 use db를 선택하고 select database()를 했더니 이제 내가 사용중인 db가 목록에 뜨는걸 확인할 수 있다.

db를 만들고나서 가장 먼저 확인할 것은 현재 db의 인코딩 셋이다. 특히 한글유저들은 꼭꼭 확인해야한다.



select default_character_set_name FROM information_schema.SCHEMATA WHERE schema_name = "<db명>";


위 명령어는 조금 길다. 사실 쿼리문이기 때문에 이해를 하면 어려운건 아니다.

해석을 하자면 information_schema데이터베이스의 schemata테이블 에서 schema_name컬럼(열)이 <db명>인

default_charager_set_name컬럼(열)을 보여줘라는 뜻이다.

이해는 어렵지 않으니 그냥 복사해서 사용해주면 된다. 아니면 외우던가.

보면 utf-8로 되어있다. 가끔가다가 utf-8로 까먹고 안했거나 예전에 했던거를 수정해야할 때가 있다.

인코딩 문제는 매우매우 중요한 문제이므로 이것을 수정하도록 하자.



보면 아시다시피 현재 mydb는 euckr로 되어있다.

이 db를 utf8로 변경하려면 아래와 같이 하면 된다.


ALTER DATABASE <db명> DEFAULT CHARACTER SET utf8;



만약 euckr로 바꾸려면 마지막 utf8을 euckr로 바꿔주면된다.

물론 쓸일은 크게 없겠지만.


만약 내가 만든 DATABSE를 통째로 파기하고 싶다면 아래처럼 입력하면된다.


drop database <db명>;


그러면 database자체가 파기된다.

+ Recent posts