MySQL의 특징은 무료(직적접인 서비스를 하지 않거나, 재배포를 하지 않는다면 무료)이면서도 강력한 기능을 지원하는 것 같습니다.
MySQL은 다른 DBMS와 달리 하나의 SQL서버에서 여러 종류의 엔진으로 DB를 운영 할 수 있다는 점입니다.

방학때 오라클 배우면서.. MySQL에서 같은 명령을 몇개 날려본적 있었습니다..그 때 MySQL에서는 트랜젝션 기능이 없고 외부키 기능이 없는 줄 알았습니다.

MyISAM과 InnoDB 엔진중에서 원하는 SQL서버 엔진을 선택하여 복합적으로 운영이 가능합니다.

MyISAM은 일반적으로 인터넷 게시판, 블로그 등 소규모 사이트에서 SELECT쿼리 문이 많이 사용되는 경우 매우 빠른 속도를 보여 인터넷 홈페이지에서 많이 사용되며 기본값입니다.

InnoDB는 좀더 강력한 기능을 가집니다. 오라클 처럼 transaction을 지원하며 FOREIGN KEY를 사용할 수 있습니다. 개인용 DB보다는 큰 DB에 적합한 DB입니다.

오라클 처럼 table space를 사용하고 log_archive를 사용하여 장애 발생에도 강력한 복구 기능을 지원할 수 있습니다.

TABLE 생성시 ENGINE=InnoDB를 사용하면 InnoDB ENGINE을 사용할 수 있습니다.

자동 commit을 끄기 위해

SET auto_commit =0;

또는

begin;

명령을 사용하면 트랜젝션 기능을 이용할 수 있습니다.

mysql> CREATE TABLE  test(
    -> num int(10) unsigned NOT NULL auto_increment,
    -> name varchar(45) NOT NULL,
    -> PRIMARY KEY(num)
    -> )ENGINE=InnoDB DEFAULT CHARSET=euckr;
Query OK, 0 rows affected (0.01 sec)

mysql> begin;
Query OK, 0 rows affected (0.00 sec)

mysql> insert into test values(null, "shin");
Query OK, 1 row affected (0.00 sec)

mysql> select * from test;
+-----+------+
| num | name |
+-----+------+
|   1 | shin |
+-----+------+
1 row in set (0.01 sec)

mysql> rollback;
Query OK, 0 rows affected (0.01 sec)

mysql> select * from test;
Empty set (0.00 sec)

mysql>


 

신고


티스토리 툴바