¾Æ·¡ ³»¿ëµéÀº ÀÚ·á°¡ ¾ÆÁÖ ¸¹±â ¶§¹®¿¡ ¼Àû¿¡´Â µé¾î°¡³ª °Á´ ¾²Áö ¾Ê°Ú½À´Ï´Ù.
ÃÖ´ëÇÑ CentOS 7ÀÇ »õ·Î¿î ±â´É À§ÁÖ·Î °Á¸¦ ¾²µµ·Ï ÇÕ´Ï´Ù.^^
15. À¥&WAS ¼ºñ½º
15.1. À¥¼ºñ½ºÀÇ ÀÌÇØ
15.2. À¥¼ºñ½ºÀÇ ¿î¿µ
15.3. PHP
15.4. WAS(Tomcat)
16. µ¥ÀÌÅͺ£À̽º
16.1. µ¥ÀÌÅͺ£À̽ºÀÇ Á¤ÀÇ
16.2. MySQL
16.3. MariaDB
CentOS7¿¡¼´Â CentOS6±îÁö Á¦°øÇÏ´ø MySQLÀ» ¸¶¸®¾ÆDB(MariaDB)·Î º¯°æÇÏ¿© Á¦°øÇÑ´Ù. CentOS7¿¡¼ Á¦°øÇÏ´Â MariaDB 5.5´Â MySQL 5.5¿Í ¸ðµç ±â´É°ú ÀÎÅÍÆäÀ̽º, API, ¸í·É¾î°¡ µ¿ÀÏÇÏ´Ù. MySQL¿¡ Àͼ÷ÇÑ °ü¸®ÀÚ¶ó¸é MariaDB¸¦ ºÎ´ã ¾øÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
MariaDB´Â MySQL°ú µ¿ÀÏÇÑ ¼Ò½ºÄÚµå ±â¹ÝÀ̸ç GPLv2 ¶óÀ̼±½º¸¦ µû¸¥´Ù. MySQLÀÌ ½ã¸¶ÀÌÅ©·Î½Ã½ºÅÛÁî¿¡¼ ÀμöÇÏ°í ½ã¸¶ÀÌÅ©·Î½Ã½ºÅÛÁî´Â ´Ù½Ã Oracle¿¡ ÀμöµÇ¾ú´Ù. ±×·¯ÀÚ MySQLÀÇ Ã¢¾÷ÀÚ ÁßÇÑ ¸íÀÌÀÚ ÇÙ½É °³¹ßÀÚ¿´´ø ¸¶ÀÌŬ ¿ÍÀ̵å´Ï¾î½º´Â ¿À¶óŬÀÇ °³¹ßÁöħ µî¿¡ ´ëÇÑ ÀÇ°ß Â÷À̰¡ »ý°å´Ù. 2009³â µ¿·á ¸î ¸í°ú ÇÔ²² ȸ»ç¸¦ ¶°³ª Monty Program AB»ç¸¦ ¼³¸³Çϰí MariaDB °³¹ßÀ» ½ÃÀÛÇß´Ù. MariaDB´Â MySQL°ú ´ÙÀ½ ºÎºÐÀÌ È£È¯µÈ´Ù.
- µ¥ÀÌÅÍ¿Í Å×À̺í Á¤ÀÇÆÄÀÏ(.frm)ÀÌ ¹ÙÀ̳ʸ® ȣȯ
- ¸ðµç Ŭ¶óÀÌ¾ðÆ® API, ÇÁ·ÎÅäÄÝ ±×¸®°í ±¸Á¶°¡ µ¿ÀÏ
- ¸ðµç ÆÄÀÏÀ̸§°ú ¹ÙÀ̳ʸ®, °æ·Î, Æ÷Æ®, ¼ÒÄÏ ±×¸®°í ±âŸ µîµîÀÌ µ¿ÀÏ
- ¸ðµç MySQL Ä¿³ØÅÍ(PHP, Perl, ÆÄÀ̽ã, ÀÚ¹Ù, .NET, MyODBC, Ruby, MySQL C Ä¿³ØÅÍ µî)°¡ ¸¶¸®¾Æ DB¿Í µ¿ÀÏÇÏ°Ô ÀÛµ¿
¸¶¸®¾ÆDB Ä¿¹Â´ÏƼ´Â MySQL°ú ºñ±³ÇØ ¸®Çø®ÄÉÀÌ¼Ç ºÎºÐ ¼Óµµ°¡ ¾à 4~5õ¹è Á¤µµ ºü¸£¸ç, MySQLÀÌ °¡Áö°í ÀÖ´Â ¸ðµç Á¦Ç°ÀÇ ±â´ÉÀ» ¿Ïº®È÷ ±¸ÇöÇϸ鼵µ ¼º´É ¸é¿¡¼´Â ÃÖ°í 70%ÀÇ Çâ»óÀ» º¸À̰í ÀÖ´Ù°í ÁÖÀåÇÑ´Ù. ±âÁ¸¿¡ MySQL ¿£ÅÍÇÁ¶óÀÌÁî¿¡¼ Ç÷¯±×ÀÎÀ¸·Î Á¦°øÇÑ ¾²·¹µå Ç® ±â´ÉÀÌ ³»À嵯À¸¸ç, ½ºÅ丮Áö ¿£ÁøÀ» Ȱ¿ëÇÑ »þµù ±â¼úÀ» Á¦°øÇÑ´Ù. Áï, MySQLÀÇ ¿ÀǼҽº ¹öÀüÀ» ³Ñ¾î(5.5±îÁö) ¸ðµç ¹öÀüÀ» ´ëüÇÒ ¼ö Àִ Ư¡µéÀ» °®Ãß°í ÀÖ´Ù°í ÇÑ´Ù.
16.3.1. MariaDB ¼³Ä¡
CentOS7¿¡¼ Á¦°øÇÏ´Â mariadb-server ÆÐŰÁö¸¦ ¼³Ä¡ÇÏ¸é ½±°Ô MariaDB ¼¹ö ¹× Ŭ¶óÀÌ¾ðÆ®¸¦ ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù.
~]# yum -y install mariadb-server
MariaDB ½Ã½ºÅÛ DB »ý¼º
MariaDBÀÇ mysql DB ¹× test DBµîÀ» »ý¼ºÇÏ°í °ü·Ã Å×À̺íÀ» »ý¼ºÇÑ´Ù.
~]# mysql_install_db --user=mysql
Installing MariaDB/MySQL system tables in '/var/lib/mysql' ...
OK
Filling help tables...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:
'/usr/bin/mysqladmin' -u root password 'new-password'
...
16.3.2. MariaDB ¿î¿µ
MariaDB RPM ÆÐŰÁö¸¦ ¼³Ä¡ÇÏ¿´´Ù¸é, ÀÚµ¿À¸·Î systemd ¼ºñ½º·Î µî·ÏµÈ´Ù. MariaDB ¼ºñ½º´Â systemctlÀ» »ç¿ëÇÏ¿© °ü¸®ÇÏ¸é µÈ´Ù.
¸ÕÀú ¼ºñ½º¸¦ ºÎÆÃ ½Ã ÀÚµ¿ ½ÃÀÛµÇ°Ô ¼³Á¤ÇÑ´Ù.
~]# systemctl enable mariadb
ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'
systemctl ¸í·É¾î·Î MariaDB¸¦ ½ÃÀÛÇÑ´Ù.
~]# systemctl start mariadb
MariaDB µ¿ÀÛ È®ÀÎ
~]# systemctl status mariadb
mariadb.service - MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled)
Active: active (running) since È 2015-04-14 23:09:26 KST; 1min 7s ago
Main PID: 18832 (mysqld_safe)
CGroup: /system.slice/mariadb.service
¦§¦¡18832 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
¦¦¦¡18989 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib6...
4¿ù 14 23:09:24 localhost.localdomain systemd[1]: Starting MariaDB database server...
4¿ù 14 23:09:24 localhost.localdomain mysqld_safe[18832]: 150414 23:09:24 mysqld_safe Logging to ...'.
4¿ù 14 23:09:24 localhost.localdomain mysqld_safe[18832]: 150414 23:09:24 mysqld_safe Starting my...ql
4¿ù 14 23:09:26 localhost.localdomain systemd[1]: Started MariaDB database server.
Hint: Some lines were ellipsized, use -l to show in full.
MariaDB Á¤Áö
~]# systemctl stop mariadb
mysqladmin ¸í·É¾î·Î MariaDB root ºñ¹Ð¹øÈ£¸¦ »ý¼ºÇÑ´Ù.
~]# mysqladmin password ºñ¹Ð¹øÈ£
mysql ¸í·É¾î·Î MariaDB ¼¹ö¿¡ Á¢¼ÓÇÑ´Ù.
~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.41-MariaDB MariaDB Server
Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
16.3.3. ¿¬µ¿ Å×½ºÆ®¸¦ À§ÇÑ DB ¹× »ç¿ëÀÚ »ý¼º
À¥°ú MariaDBÀ» ¿¬µ¿Çϱâ À§ÇØ MariaDBÀÇ DB¿Í »ç¿ëÀÚ¸¦ »ý¼ºÇØ¾ß ÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â sulinux DB¸¦ »ý¼ºÇϰí, sulinux »ç¿ëÀÚ¸¦ »ý¼ºÇÏ¿© sulinux DB¿¡ ´ëÇÑ ¸ðµç ±ÇÇÑÀ» ÁÖ´Â °ÍÀ̸ç, ¡°FLUSH PRIVILEGES"´Â ¸¶Áö¸·¿¡ ±ÇÇÑ¿¡ ´ëÇÑ ¼³Á¤ÀÌ ÀúÀåµÈ mysql DBÀÇ ³»¿ëÀ» ÀÐ¾î µé¿© Àû¿ëÇÑ´Ù.
~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.41-MariaDB MariaDB Server
Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE sulinux;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON sulinux.* TO sulinux@localhost IDENTIFIED BY 'ºñ¹Ð¹øÈ£' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
16.3.4. DB ¿¬µ¿ Å×½ºÆ®
php¿¡¼ MariaDB¸¦ »ç¿ëÇϱâ À§ÇØ php-mysql ¹× php-pdo ¸ðµâÀ» ¼³Ä¡ÇØ¾ß ÇÑ´Ù. yumÀ» ÀÌ¿ëÇÏ¿© php-mysql ÆÐŰÁö¸¦ ¼³Ä¡ÇÑ´Ù.
~]# yum -y install php-mysql
php ¹× Apache ¼³Á¤ º¯°æ ÈÄ¿¡´Â ²À Apache¸¦ Àç½ÃÀÛÇÏ¿© ¼³Á¤ ³»¿ªÀ» Àû¿ëÇϵµ·Ï ÇÏÀÚ.
~]# systemctl restart httpd
PHP¿¡¼ DB¸¦ ¿¬µ¿ÇÏ´Â ¾ÆÁÖ °£´ÜÇÑ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ¿© Å×½ºÆ®ÇØ º¸µµ·Ï ÇϰڴÙ. "/var/www/html/mysqlDBtest.php"ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇØ º»´Ù.
<?php
echo "DB Connect<BR>";
$mysql = mysql_connect("127.0.0.1", "sulinux", "ºñ¹Ð¹øÈ£") or die("DB Connect Faied");
echo "Select sulinux DB<BR>";
$status = mysql_select_db("sulinux",$mysql);
echo "Create sutable table<BR>";
$result = mysql_query("CREATE TABLE sutable ( a text )",$mysql);
echo "Insert data<BR>";
$result = mysql_query("INSERT INTO sutable VALUES('DataBase Test')",$mysql);
echo "Select data<BR>";
$result = mysql_query("SELECT * FROM sutable",$mysql);
echo "Fetch data<BR>";
$row = mysql_fetch_array($result);
echo "Result : <FONT color=red>".$row["a"]."</FONT><BR>";
echo "Drop sutable table<BR>";
$result = mysql_query("DROP TABLE sutable",$mysql);
?>
À§ ÇÁ·Î±×·¥Àº MariaDB¿¡ ¿¬°áÇϰí, sulinux DB¸¦ ¼±ÅÃÇϸç, "sutable"À̶ó´Â Å×À̺íÀ» »ý¼ºÇÑ´Ù. »ý¼ºµÈ Å×ÀÌºí¿¡ "DataBase Test"¶ó´Â °ªÀ» »ðÀÔÇϰí, »ðÀÔµÈ µ¥ÀÌÅÍ´Â SELECT ±¸¹®À» »ç¿ëÇÏ¿© »Ì¾Æ³½´Ù. »Ì¾Æ³½ µ¥ÀÌÅ͸¦ ¹è¿·Î ¸¸µç ´ÙÀ½, Ãâ·ÂÇÑ´Ù. Ãâ·Â ÈÄ¿¡´Â "sutable"À» Á¦°ÅÇÏ´Â °£´ÜÇÑ ÇÁ·Î±×·¥ÀÌ´Ù. À¥ºê¶ó¿ìÀú¿¡¼ "http://localhost/mariaDBtest.php"¸¦ È£ÃâÇÏ¸é ´ÙÀ½°ú °°Àº °á°ú¸¦ º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù.