MySQL 시스템 데이터베이스 및 테이블 구조 이해하기
1. 데이터 베이스
MySQL 서버를 설치하면 두 개의 데이터베이스가 생성됩니다.
mysql : 시스템 데이터베이스입니다. 사용자를 만들고 데이터베이스를 만들어 연결해 주는 역활을 담당하는 데이터베이스입니다.
test : 테스트용 데이터베이스입니다.
2. 테이블
테이블의 구조를 살펴보기 전에 mysql 디렉토리의 파일을 보면
[root@dbadb mysql]# ls columns_priv.frm db.frm func.frm host.frm tables_priv.frm user.frm columns_priv.MYD db.MYD func.MYD host.MYD tables_priv.MYD user.MYD columns_priv.MYI db.MYI func.MYI host.MYI tables_priv.MYI user.MYI |
18개의 파일이 있는데, 자세히 보면 세 종류의 확장자를 가지고 있습니다.
테이블명.frm : 테이블 정의에 대한 정보를 가지고 있습니다.
테이블명.MYD : 데이터를 가지고 있습니다.
테이블명.MYI : 인덱스를 가지고 있습니다.
테이블 마다 3개의 파일을 가지고 있습니다.
mysql 데이터베이스 안에는 다섯 개의 테이블이 있습니다.
mysql> show tables; +-----------------+ | Tables_in_mysql | +-----------------+ | columns_priv | | db | | func | | host | | tables_priv | | user | +-----------------+ 6 rows in set (0.01 sec) |
db Table
db 테이블은 데이터베이스와 사용자 계정과의 관계를 명시하며, 사용자가 특정 데이터베이스에 대한 권한을 부여한다.
user Table
사용자 계정을 만들고 패스워드를 부여하는 테이블이다.
func Table
func 테이블은 UDF로 함수가 추가되었을 경우에, 입력되는 테이블입니다.
---------------------------------------------
흑기사
날짜:2003-12-04 10:22:00
조회수:282
출처 - http://cafe.naver.com/ilovedata.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=23&
'DB > MySQL' 카테고리의 다른 글
MySQL flush privileges 명령어 (0) | 2012.01.24 |
---|---|
mysql user 생성시 ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value (2) | 2012.01.24 |
mysqld_safe (0) | 2012.01.18 |
MySQL DB 백업/복구 (0) | 2011.10.19 |
MySQL에서 Create Procedure 설명 (0) | 2010.12.21 |