<!--StartFragment-->- MariaDB  (http://mariadb.com) -
(1) 소개
  MySQL 개발자 미카엘 위데니우스에 의해 만들어진 MariaDB는
  MySQL이 MariaDB의 모태이며, Sun에서 가져온 DataBase입니다.
  그러므로 MySQL과 흡사합니다.
 

(2) MariaDB 다운로드
  https://downloads.mariadb.org/mariadb/repositories/

(3) 설치
yum -y install MariaDB-server MariaDB-client
또는
컴파일버전이 아닌 보다 high performance인 바이너리버전(64bit)으로 설치하겠습니다.
OS = CentOS 5.4
MariaDB버전 = mariadb-5.1.47
설치경로 = /home/csr
baserdir = /home/csr/mariadb
datadir = /home/csr/mariadb/data

① 다운로드 및 압축해제
   shell> wget 'http://askmonty.org/downloads/r/http://ftp.rediris.es/mirror/MariaDB/mariadb-5.1.47/kvm-bintar-hardy-x86/mariadb-5.1.47-Linux-i686.tar.gz'
   shell> tar xvfz mariadb-5.1.47-Linux-i686.tar.gz -C /home/csr

② user , group 생성
   shell> groupadd mysql
   shell> useradd -g mysql mysql

③ 심벌릭링크 권한변경
   shell> ln -s mariadb-5.1.47-Linux-x86_64 mariadb
   shell> chown -R mysql.mysql /home/csr/mariadb-5.1.47-Linux-x86_64

④ my.cnf 생성및수정
   shell> cp /home/csr/mariadb/support-files/my-huge.cnf /home/csr/mariadb/my.cnf
   shell> vi my.cnf
[client]
#password       = your_password
port            = 3306
socket          = /tmp/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
basedir         = /home/csr/mariadb
datadir         = /home/csr/mariadb/data
skip-external-locking

⑤ install db (datadir 생성)
  shell> /home/csr/mariadb-5.1.47-Linux-x86_64/script-xs/mysql_install_db --defaults-file=/home/csr/mariadb/my.cnf --user=mysql

⑥ mariaDB 데몬 start
  shell> /home/csr/mariadb/bin/mysqld_safe --defaults-file=/home/csr/mariadb/my.cnf --basedir=/home/csr/mariadb --datadir=/home/csr/mariadb/data --user=mysql &

⑦ mariaDB connect
  shell> /home/csr/mariadb/bin/mysql -uroot -p
MariaDB [mysql]> select version();
+--------------------+
| version()          |
+--------------------+
| 5.1.47-MariaDB-log |
+--------------------+
1 row in set (0.00 sec)

⑧ Engine 확인
MariaDB [(none)]> show engines;
+---------------+----------+----------------------------------------+--------------
| Engine            | Support   | Comment                                             | Transactions
+---------------+----------+--------------------------------------------+--------------
| BLACKHOLE    | YES        | /dev/null storage engine (anything you   | NO          
| MRG_MYISAM | YES        | Collection of identical MyISAM tables      | NO          
| FEDERATED    | YES        | FederatedX pluggable storage engine      | YES         
| MARIA            | YES        | Crash-safe tables with MyISAM heritage  | YES         
| CSV               | YES        | CSV storage engine                               | NO          
| MEMORY        | YES        | Hash based, stored in memory, useful fo | NO          
| ARCHIVE        | YES        | Archive storage engine                           | NO          
| MyISAM         | DEFAULT | Default engine as of MySQL 3.23 with gr   | NO          
| InnoDB           | YES        | Supports transactions, and foreign keys    | YES         
| PBXT             | YES        | High performance, multi-versioning tran    | YES         
+---------------+----------+----------------------------------------+--------------
10 rows in set (0.00 sec)
Engine중에 MySQL에서는 접하지 못했던 MARIA , PBXT 라는 Engine이 보입니다.
Transaction 지원도 InnoDB는 물론이고 MARIA , PBXT Engine도 지원하는걸로 보입니다.
(MARIA Engine은 현재 transaction을 지원하지않으나, 앞으로의 버전에서는 지원한다는뜻같습니다.)
아쉬운점은 foreign key지원이 MySQL과 동일하게 InnoDB만 지원하네요.

⑨ MARIA Engine 으로 table 생성 및 data insert

MariaDB [test]> CREATE TABLE `mariatable` (
    ->   `idx` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
    ->   `name` VARCHAR(24) NOT NULL,
    ->   PRIMARY KEY (`idx`)
    -> ) ENGINE=MARIA DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test]> insert into mariatable(idx,name)values('','양택조');
Query OK, 1 row affected, 1 warning (0.00 sec)

MariaDB [test]> select * from mariatable;
+-----+--------+
| idx | name   |
+-----+--------+
|   1 | 양택조 |
+-----+--------+
1 row in set (0.00 sec)

MARIA Engine의 data file 확장자는 *.frm(스키마)  *.MAD(데이타)  *.MAI(인덱스) 입니다.
data file 확장자가 MyISAM 과 흡사합니다.

⑩ partition 지원
MariaDB [test]> show plugin;
+--------------------------------+--------+--------------------+---------+---------+
| Name                           | Status | Type               | Library | License |
+--------------------------------+--------+--------------------+---------+---------+
| binlog                         | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| MyISAM                         | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| partition                      | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| ARCHIVE                        | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| BLACKHOLE                      | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| CSV                            | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| FEDERATED                      | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| MEMORY                         | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| MARIA                          | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| MRG_MYISAM                     | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| PBXT                           | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| PBXT_STATISTICS                | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| InnoDB                         | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| INNODB_RSEG                    | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_BUFFER_POOL_PAGES       | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_BUFFER_POOL_PAGES_INDEX | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_BUFFER_POOL_PAGES_BLOB  | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_TRX                     | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_LOCKS                   | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_LOCK_WAITS              | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMP                     | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMP_RESET               | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMPMEM                  | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMPMEM_RESET            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_TABLE_STATS             | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_INDEX_STATS             | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| XTRADB_ADMIN_COMMAND           | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_SYS_TABLES              | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_SYS_INDEXES             | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| XTRADB_ENHANCEMENTS            | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
+--------------------------------+--------+--------------------+---------+---------+


⑪MySQL과의 호환성
  MySQL과의 호환성이  대부분 되는듯 보입니다.(테스트진행중)
  또한 PHP에서도  mysql관련 함수들과 호환됩니다.

부팅시 자동시작 설정
기본으로 설정되어 있지만 한번 더 확인

[root@jmnote ~]# chkconfig mysql on
[root@jmnote ~]# chkconfig --list mysql
mysql          0:off 1:off 2:on 3:on 4:on 5:on 6:off

이상으로 MariaDB 바이러리버전 설치를 마치겠습니다.


[출처] ::: MySQL Korea ::: - http://www.mysqlkorea.co.kr/

'데이터베이스' 카테고리의 다른 글

[MYSQL] LIKE vs INSTR()  (0) 2014.08.23
MySQL JOIN 이란?  (0) 2014.08.20
MySQL DB 테이블 연산자 - JOIN 명령어  (0) 2014.08.20
REPAIR TABLE 속도  (0) 2014.08.20
SQLyog 에서 한글이 네모등으로 깨져서 나올때  (0) 2014.08.20
Posted by 주말소프트
,