Á¦ 3°­ MySQLÀÇ »ç¿ë ¹æ¹ý

  Ãâó : http://gwangcom.co.kr

 
 Á¦ 3°­ MySQLÀÇ »ç ¿ë ¹æ¹ý

3.1 Áß¿ä ½ÇÇà ÆÄÀÏ°ú µ¥¸ó

  • Áß¿ä ½ÇÇà ÆÄÀÏ
    mysql
    • SQL ½©
    • client ÇÁ·Î±×·¥
    • mySQL ¿¡ Á¢¼ÓÇÏ¿© Äõ¸®¸¦ ¼öÇàÇÏ´Â ÇÁ·Î ±×·¥
    mysqladmin
    • MySQLÀ» °ü¸®ÇÏ´Â ÇÁ·Î±×·¥
    • µ¥ÀÌÅͺ£À̽ºÀÇ »ý¼º, »èÁ¦, ±ÇÇÑ ¼³Á¤ Å×À̺íÀ» ÀоîµéÀÌ´Â ÀÏÀ» ¼öÇà
    mysqld
    • MySQL µ¥¸ó
    mysqlshow
    • MySQL ¾È¿¡ ÀÖ´Â µ¥ÀÌÅͺ£À̽º¿Í Å×ÀÌºí °ú Ä÷³À» Ç¥½ÃÇØÁÖ´Â ÇÁ·Î±×·¥
    safe_mysqld
    • MySQLÀ» ¾ÈÀüÇÏ°Ô ½ÇÇà½ÃÅ°´Â ½ºÅ©¸³Æ® ÇÁ·Î±×·¥ ÆÄÀÏ
    isamchk
    • Å×ÀÌºí¿¡ ¹®Á¦°¡ ¹ß»ýÇÒ °æ¿ì ¼öÁ¤ÇÏ°í, Å×À̺íÀ» ÃÖÀûÈ­ ÇÏ´Â ÇÁ·Î±×·¥
  • µ¥¸óÀ» ¼öÇà ½ÃÅ°´Â ¹æ¹ý
    % safe_mysqld µ¥¸óÀ» ¾ÈÀüÇÏ°Ô ¼öÇà
    % mysqld µ¥¸óÀ» ¼öÇà, µðÆúÆ® Æ÷µå : 3306
    % mysqld -P 333 Æ÷Æ® ¹øÈ£¸¦ ÁöÁ¤ÇÏ¿© µ¥¸óÀ» ¼öÇà
  • ºÎÆýà µ¥¸óÀ» ÀÚµ¿¼öÇà½ÃÅ°´Â ¹æ¹ý
    - /etc/rc.d/rc.local ÆÄÀÏ¿¡ µî·Ï
    - rpmÀ¸·Î ¼³Ä¡ÇÑ °æ¿ì ÀÚµ¿ µî·Ï

3.2 ±ÇÇÑ ¼³Á¤

  • MySQLÀ» óÀ½ ¼³Ä¡Çϸé root ¸¸ÀÌ MYSQL À» »ç¿ë°¡´ÉÇϵµ·Ï ±ÇÇÑÀÌ ¼³Á¤µÊ
  • ÇöÀç »óÅ¿¡¼­ ¼³Á¤µÈ µ¥ÀÌŸº£À̽º¸¦ È®ÀÎ :mysqlshow ¸í·É »ç¿ë
    % mysqlshow -u root
    +-----------+
    | Databases |
    +-----------+
    | mysql         |
    | test             |
    +-----------+

    - " -u root " : root °¡ »ç¿ë ÇÑ´Ù´Â ¿É¼Ç
    - ÃÖÃÊ ¼³Ä¡½Ã : mtsql°ú test µÎ°³ÀÇ µ¥À̺íÀÌ Á¸Àç

  • mysql µ¥ÀÌŸº£À̽ºÀÇ Å×À̺í È®ÀÎ : mysqlshow ¸í·É »ç¿ë
    % mysqlshow -u root mysql
    Database: mysql
    +--------------+
    | columns_priv       |
    | db                       |
    | func                    |
    | host                     |
    | tables_priv           |
    | user                     |
    +--------------+

    - user Å×À̺íÀÌ »ç¿ëÀÚ ±ÇÇÑ¿¡ °üÇÑ Å×ÀÌ ºíÀÓ

  • user Å×À̺íÀÇ ·¹ÄÚµå È®ÀÎ
    % mysql -u root
    Welcome to the MySQL monitor.  
    Commands end with ; or \g.
    Your MySQL connection id is 4 to server version: 3.22.22
    
    Type 'help' for help.
    
    mysql> use 
    mysql
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    
    Database changed
    
    mysql> select * 
    from user;
    +-----------+------+-
    ---------+-------------+-------------+-------------+------+
    |   Host      | User | Password | Select_priv | Insert_priv | 
    Update_priv | Delet|
    +-----------+------+----------+-------------+-------------+----------
    ---+------+
    | localhost | root |                  |      Y           |      
    Y           |       Y          | Y    |
    | orange    | root |                  |      Y           |      
    Y           |       Y          | Y    |
    | localhost |        |                  |      N           |      
    N           |       N         | N    |
    | orange    |        |                  |      N           |      
    N           |       N         | N    |
    +-----------+------+----------+-------------+-------------+----------
    ---+------+
    4 rows in set (0.01 sec)
    
    mysql>

    - "*.priv" ÄÄ·³: »ç¿ë ±ÇÇÑ¿¡ ´ëÇÑ ¼³Á¤, Y ÀÌ¸é ±ÇÇÑÀ» °¡ÁüÀ», NÀÌ¸é ±ÇÇÑÀÌ ¾øÀ½À» ÀǹÌ
    - "Password" Ä÷³ : ¾ÏÈ£ÀÇ ¼³Á¤ »óŸ¦ ÀǹÌ, ÇöÁ¦ root´Â ¾ÏÈ£°¡ ¾øÀ½

  • root »ç¿ëÀÚ¿¡ ´ëÇÏ¿© ¾ÏÈ£¸¦ ¼³Á¤
    mysql> 
    update user set password = password('apple1234')   => ¾ÏÈ£ ¼³Á¤
        -
    > where 
    user='root' ;
    Query OK, 2 rows 
    affected (0.13 sec)
    Rows matched: 2  Changed: 2  Warnings: 0
    
    mysql> quit 
    => Á¾·á
    Bye
    % mysqladmin -u root 
    reload => ±ÇÇÑÀÌ 
    º¯°æµÈ °æ¿ì º¯°æµÈ ±ÇÇÑÀ» ´Ù½Ã ÀÐ¾î µéÀÓ
    % mysql -u root -p          
    => ¾ÏÈ£°¡ ÀÖ´Â °æ
    ¿ì -p ¿É¼ÇÀ» ºÙ¿©¼­ mysqlÀ» ¼öÇà
    Enter password: 
    XXXXXXXXXX
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 8 to server version: 3.22.22
    
    Type 'help' for help.
    
    mysql> select * 
    from user;
    +-----------+------+------------------+-------------+-------------+--
    ----------+
    | Host        | User | Password                 | Select_priv | 
    Insert_priv | Update_priv|
    +-----------+------+------------------+-------------+-------------+--
    ----------+
    | localhost | root  | 32b157395f7543c0 | Y                |    
    Y           | Y          |
    | orange    | root  | 32b157395f7543c0 | Y                |    
    Y           | Y          |
    | localhost |         |                                 | 
    N                |    N           | N          |
    | orange    |         |                                 | 
    N                |    N           | N          |
    +-----------+------+------------------+-------------+-------------+--
    ----------+
    4 rows in set (0.01 sec)
    
    mysql>

3.3 »ç¿ëÀÚ Ãß°¡

  • "INSERT .. INTO" ¸í·ÉÀ» ÀÌ¿ë Çؼ­ mysql µ¥ÀÌŸº£À̽ºÀÇ user Å×ÀÌºí¿¡ Ãß°¡
    % mysql -u root -p mysql
    Enter password:XXXXXXXXXX
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 11 to server version: 3.22.22
    
    Type 'help' for help.
    
    mysql> insert into user 
    values('localhost', 'wiseo', ==> »ç¿ëÀÚ wiseo¿¡°Ô ¸ðµç ±ÇÇÑ 
        -> password('apple2000'), 'Y', 'Y', 'Y', 'Y',
        -> 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
        -> 'Y', 'Y');
    Query OK, 1 row affected (0.01 sec)
    
    mysql> select * from 
    user;
    +-----------+-------+------------------+-------------+-------------+-
    ----------+
    | Host        | User   | Password              | Select_priv | 
    Insert_priv | Update_pri|
    +-----------+-------+------------------+-------------+-------------+-
    ----------+
    | localhost |  root   | 32b157395f7543c0   |      Y           |     
    Y           | Y         |
    | orange    |  root   | 32b157395f7543c0   |      Y           |     
    Y           | Y         |
    | localhost |           |                                |     
    N           |     N           | N         |
    | orange    |           |                                |     
    N           |     N           | N         |
    | localhost | wiseo | 6da73b5d2ab9ea69 |     Y           |     
    Y           | Y         |
    +-----------+-------+------------------+-------------+-------------+-
    ----------+
    5 rows in set (0.01 sec)
    
    mysql>

    - ±ÇÇÑÀ» ºÎ¿© ÇÏ°íÀÚ ÇÑ´Ù¸é ÇØ´ç Ä÷³ ÀÇ °ªÀ» 'Y'·Î ¾Æ´Ï¸é 'N'À¸·Î ¼³Á¤

  • SELECT, INSERT, DELETE¿¡ ´ëÇÑ ±ÇÇѸ¸ ÁÖ°íÀÚ ÇÑ´Ù¸é
    mysql> insert into user values('localhost', 'wiseo', 
        -> password('apple2000'), 'Y', 'Y', 'Y');
    Query OK, 1 row affected (0.01 sec)
    
    mysql>
  • "GRANT" ¸í·ÉÀ» ÀÌ¿ëÇؼ­ mysql µ¥ÀÌŸº£À̽ºÀÇ user Å×ÀÌºí¿¡ Ãß°¡
    mysql> grant all priviledges on *.* to wiseo@localhost 
    ==> »ç¿ëÀÚ wiseo¿¡°Ô ¸ðµç 
    񀀥 
        -> identified by 'apple2000' with grant 
    option;
    Query OK, 0 rows affected 
    (0.01 sec)
    mysql>
  • "GRANT" ¸í·ÉÀ» ÀÌ¿ëÇؼ­ RELOAD¿Í PROCESS ±ÇÇÑ ¸¸À» ¼³Á¤
    mysql> grant reload,process on *.* to wiseo@localhost 
        -> identified by 'apple2000' with grant 
    option;
    Query OK, 0 rows affected 
    (0.01 sec)
    mysql>
  • ±ÇÇÑÀ» º¯°æÇÑ °æ¿ì ¹Ýµå½Ã ±ÇÇÑÀ» Àû¿ë ÇÏ¿©¾ß ÇÔ(2°¡Áö ¹æ¹ý)
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql>
    % mysqladmin -u root -p reload
    Enter password: 
    XXXXXXXX

3.4 ¾ÏÈ£

  • root ¾ÏÈ£¸¦ Àؾî¹ö¸° °æ¿ì
    - MySQL µ¥¸óÀÇ ½ÇÇàÀ» ÁßÁö
    - ±ÇÇÑ¿¡ ´ëÇÑ °Ë»ç¸¦ ÇÏÁö ¾Ê°í µ¥¸óÀ» ½ÇÇà : safe_mysql -Sg &
    - mysqlÀ» »ç¿ëÇÏ¿© ¾ÏÈ£¸¦ Á¦°Å
    - mysqladmin reload¸¦ ÀÌ¿ëÇؼ­ º¯°æµÈ ±ÇÇÑÀ» Àû¿ëÇÏ°í, µ¥¸óÀ» ´Ù½Ã ¼öÇà
  • ¾ÏÈ£ÀÇ ÀúÀå
    - ¾ÏÈ£°¡ ¼³Á¤µÈ °æ¿ì ¸ðµç ¸í·ÉÀ» »ç¿ëÇϱâ À§Çؼ­´Â -p ¿É¼ÇÀ» ºÙ¿© ¾ß ÇÏ°í, ¾ÏÈ£¸¦ ÀÔ·ÂÇÏ¿©¾ß ÇÔ
    - ¾ÏÈ£ ÀÔ·ÂÀ» »ý·«ÇÏ·Á¸é Ȩµð·ºÅ丮¿¡ .my.cnf ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ¸¸µé¾î¾ß ÇÔ.
    % cat > .my.cnf
    [client]
    password=¾ÏÈ£
    ^D
    % chmod 
    600 .my.cnf  => ´Ù¸¥ »ç¶÷ÀÌ º¸Áö ¸øÇϵµ·Ï ÆÄÀÏ Á¢±Ù ±ÇÇÑÀ» ¼³Á¤
    
    %

3.5 Ä÷³ÀÇ À¯Çü

  • Ä÷³(Column)
    - µ¥ÀÌŸº£À̽º¸¦ ±¸¼º ÇÏ´Â ÃÖ¼Ò ´ÜÀ§
    - Ä÷³µéÀÌ ¸ð¿©¼­ Å×À̺í(Table)À» ±¸¼º
  • Ä÷³ÀÇ À¯Çü
    TYNYINT
    • ºÎÈ£ ÀÖ´Â Á¤¼ö -128 ~ 127
    • ºÎÈ£ ¾ø´Â Á¤¼ö 0 ~255
    • 1 Byte
    SMALLINT
    • ºÎÈ£ ÀÖ´Â Á¤¼ö -32768 ~ 32767
    • ºÎÈ£ ¾ø´Â Á¤¼ö 0 ~65535
    • 2 Byte
    MEDIUMINT
    • ºÎÈ£ ÀÖ´Â Á¤¼ö -8388608 ~ 8388607
    • ºÎÈ£ ¾ø´Â Á¤¼ö 0 ~16777215
    • 3 Byte
    INT ¶Ç´Â INTEGER
    • ºÎÈ£ ÀÖ´Â Á¤¼ö -2147483648 ~ 2147483647
    • ºÎÈ£ ¾ø´Â Á¤¼ö 0 ~4294967295
    • 4 Byte
    BIGINT
    • ºÎÈ£ ÀÖ´Â Á¤¼ö - 9223372036854775808 ~ 9223372036854775807
    • ºÎÈ£ ¾ø´Â Á¤¼ö 0 ~18446744073709551615
    • 8 Byte
    FLOAT
    • ´ÜÀÏ Á¤¹Ðµµ¸¦ °¡Áø ºÎµ¿ ¼Ò¼ö Á¡
    • -3.402823466E+38 ~3.402823466E+38
    DOUBLE
    • 2 ¹è Á¤¹Ðµµ¸¦ °¡Áø ºÎµ¿ ¼Ò¼ö Á¡
    • -1.79769313486231517E+308 ~ 1.79769313486231517E+308
    DATE
    • ³¯Â¥¸¦ Ç¥ÇöÇÏ´Â À¯Çü
    • 1000-01-01 ~ 9999-12- 31
    DATETIME
    • ³¯Â¥¿Í ½Ã°£À» Ç¥ÇöÇÏ´Â À¯Çü
    • 1000-01-01 00:00:00 ~ 9999- 12-31 23:59:59
    TIMESTAMP
    • 1970-01-01 00:00:00 ºÎÅÍ 2037³â ±îÁö Ç¥Çö
    • 4 Byte
    TIME
    • ½Ã°£À» Ç¥ÇöÇÏ´Â À¯Çü
    • -839:59:59 ~ 838:59:59
    YEAR
    • ³âµµ¸¦ Ç¥ÇöÇÏ´Â À¯Çü
    • 1901 ³â ~ 2155³â
    CHAR(M)
    • °íÁ¤±æÀÌ ¹®ÀÚ¿­À» Ç¥ÇöÇÏ´Â À¯Çü
    • M = 1 ~255
    VARCHAR(M)
    • °¡º¯±æÀÌ ¹®ÀÚ¿­À» Ç¥ÇöÇÏ´Â À¯Çü
    • M = 1 ~ 255
    TINYBLOB
    TINYTEXT
    • 255°³ÀÇ ¹®ÀÚ¸¦ ÀúÀå
    • BLOB : BINARY LARGE OBJECT ÀÇ ¾àÀÚ
    BLOB
    TEXT
    • 63535°³ÀÇ ¹®ÀÚ¸¦ ÀúÀå
    MEDIUMBLOB
    MEDIUMTEXT
    • 16777215°³ÀÇ ¹®ÀÚ¸¦ ÀúÀå
    LONGBLOB
    LONGTEXT
    • 4294967295(4Giga)°³ÀÇ ¹®ÀÚ ¸¦ ÀúÀå

¡¡

3.6 µ¥ÀÌŸº£À̽º »ý¼º

  • mysqladminÀ» ÀÌ¿ëÇÏ´Â ¹æ¹ý
    % mysqladmin create super
    Database "guestbook" created.
    % mysqlshow
    +-----------+
    | Databases     |
    +-----------+
    | mysql             |
    | guestbook      |
    | test                |
    +-----------+
    %
  • mysqlÀ» ÀÌ¿ëÇÏ´Â ¹æ¹ý
    % mysql
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 4 to server version: 3.22.22
    
    Type 'help' for help.
    
    mysql> create 
    datatbase guestbook;
    Query OK, 1 row affected (0.01 sec)
    
    mysql> show 
    databases;
    +-----------+
    | Databases     |
    +-----------+
    | mysql             |
    | guestbook     |
    | test                |
    +-----------+
    Query OK, 1 row 
    affected (0.01 sec)
    
    mysql>

3.7 Å×ÀÌºí »ý¼º

  • Å×À̺íÀÇ ¿¹ : °í°´ Å×À̺í
    Å×ÀÌºí ¸í : guest
    Ä÷³ ¸í   : ÀϷùøÈ£(no) -> ÀÚµ¿À¸·Î ºÎ¿©µÇ´Â ÀÏ·Ã ¹øÈ£, Å°
                À̸§(name) 
                ³ªÀÌ(age)
                ÀüÈ­¹øÈ£(phone)
                ÀüÀÚ¿ìÆíÁÖ¼Ò(email)
                ÁÖ¼Ò(address)
  • Å×ÀÌºí »ý¼º ¹æ¹ý : mysql ¸í·É ¸ðµå¿¡ ¼­ CREATE ¹®À» »ç¿ë
    CREATE TABLE Å×À̺í¸í (Ä÷³ÀÇ Çü ½Ä) ;
  • Å×ÀÌºí »ý¼º ¿¹Á¦
    % mysql
    mysql> use 
    guestbook;
    Database 
    changed
    mysql> CREATE 
    TABLE guest(no INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
        -> name CHAR
    (20), age TINYINT, phone VARCHAR(20),email VARCHAR
    (30),
        -> address 
    VARCHAR(50));
    Query OK, 0 rows 
    affected (0.01 sec)
    
    mysql> SHOW 
    TABLES;   => »ý¼º
    µÈ Å×À̺íÀ» È®ÀÎ
    +--------------------
    -+
    | Tables in guestbook          |
    +---------------------+
    | guest                                 |
    +---------------------+
    1 row in set (0.00 sec)
    
    mysql>
    
  • PRIMARY KEY : ÁÖ Å°·Î ¼³Á¤
  • NOT NULL : ¹Ýµå ½Ã °ªÀ» °¡Á®¾ß ÇÔÀ» ÀǹÌ
  • AUTO_INCREMENT : ·¹Äڵ尡 »ðÀ﵃ ¶§ ¸¶´Ù ÀÚµ¿À¸·Î °ªÀ» Áõ°¡

3.8 ·¹ÄÚµå »ðÀÔ

  • »ðÀÔÇÒ ·¹ÄÚµå Á¤º¸

    no

    name

    age

    phone

    email

    address

    1

    È«±æµ¿

    20

    510-0001

    hong@jisan.ac.kr

    ºÎ»ê

    2

    ±èÀ¯½Å

    22

    510-1004

    kim@jisan.ac.kr

    °æÁÖ

    3

    °­°¨Âù

    23

    510-9000

    gang@jisan.ac.kr

    ´ë±¸

    4

    À̼ø½Å

    21

    560-8000

    lee@jisan.ac.kr

    ¿©¼ö

    5

    ÀÓ²©Á¤

    30

    800-7000

    lim@jisan.ac.kr

    ´ëÀü

    6

    À¯°ü¼ø

    21

    700-5555

    you@jisan.ac.kr

    ¼­¿ï

    7

    À±ºÀ±æ

    28

    288-5757

    youn@jisan.ac.kr

    ÀÎõ

    8

    ¾ÈÁß±Ù

    33

    566-4545

    ann@jisan.ac.kr

    ¼ö¿ø

    9

    ¹Ú¹®¼ö

    25

    767-9090

    park@jisan.ac.kr

    ÃæÁÖ

    10

    Á¤Ã¶¼ö

    55

    777-9999

    jung@jisan.ac.kr

    ±¤ÁÖ

  • ·¹ÄÚµå »ðÀÔ ¹æ¹ý : mysql ¸í·É ¸ðµå¿¡ ¼­ INSERT ¹®À» »ç¿ë
    INSERT INTO Å×À̺í¸í VALUES(Ä÷³ÀÇ µ¥ ÀÌÅÍ °ª...) ;
  • ·¹ÄÚµå »ðÀÔ ¿¹Á¦:
    mysql> INSERT INTO guest VALUES(1,'È«±æ
    µ¿',20,'510-0001',
        -> 'hong@jisan.ac.kr','ºÎ»ê');
    Query OK, 1 row affected (0.05 sec)
    mysql> INSERT 
    INTO guest VALUES(NULL,'±èÀ¯½Å',22,'510-1004',
        -> 'kim@jisan.ac.kr','°æ
    ÁÖ');
    Query OK, 1 row affected (0.05 sec)
    (Áß·«)
    mysql> select * 
    from guest;
    +----+--------+------+----------+------------------+---------+
    | no | name  | age  | phone      | email                    | 
    address |
    +----+--------+------+----------+------------------+---------+
    |   1 | È«±æµ¿ |   20 | 510-0001 | hong@jisan.ac.kr | ºÎ»ê    |
    |   2 | ±èÀ¯½Å |   22 | 510-1004 | kim@jisan.ac.kr   | °æÁÖ    |
    |   3 | °­°¨Âù |   23 | 510-9000 | gang@jisan.ac.kr | ´ë±¸    |
    |   4 | À̼ø½Å |   21 | 560-8000 | lee@jisan.ac.kr    | ¿©¼ö    |
    |   5 | ÀÓ²©Á¤ |   30 | 800-7000 | lim@jisan.ac.kr    | ¿©¼ö    |
    |   6 | À¯°ü¼ø |   21 | 700-5555 | you@jisan.ac.kr   | ¼­¿ï    |
    |   7 | À±ºÀ±æ |   28 | 288-5757 | youn@jisan.ac.kr | ÀÎõ    |
    |   8 | ¾ÈÁß±Ù |   33 | 566-4545 | ann@jisan.ac.kr   | ¼ö¿ø    |
    |   9 | ¹Ú¹®¼ö |   25 | 767-4545 | park@jisan.ac.kr  | ÃæÁÖ    |
    | 10 | Á¤Ã¶¼ö |   55 | 777-9999 | jung@jisan.ac.kr  | ±¤ÁÖ    |
    +----+--------+------+----------+------------------+---------+
    10 rows in set (0.00 sec)
    
    mysql>

¡¡

3.9 ·¹ÄÚµå ¼öÁ¤

  • ·¹ÄÚµå ¼öÁ¤ ¹æ¹ý : mysql ¸í·É ¸ðµå¿¡ ¼­ UPDATE ¹®À» »ç¿ë
    UPDATE Å×À̺í¸í SET Ä÷³¸í=½Ä ,... [ WHERE Á¶°Ç ];
  • ·¹ÄÚµå ¼öÁ¤ ¿¹Á¦:
    mysql> Update guest SET address='´ëÀü' 
    where name='ÀÓ²©Á¤';
    Query OK, 1 row affected (0.01 sec)
    Rows matched: 1 Changed: 1 Warnings: 0
    mysql> select * 
    from guest where name='ÀÓ²©Á¤';
    +----+--------+------+----------+-----------------+---------+
    | no  | name   | age  |   phone    |      email           | address |
    +----+--------+------+----------+-----------------+---------+
    |  5   | ÀÓ²©Á¤  |   30  |800-7000 | lim@jisan.ac.kr | ´ëÀü    |
    +----+--------+------+----------+-----------------+---------+
    1 row in set (0.00 sec)
    
    mysql>

¡¡

3.10 ·¹ÄÚµå °Ë»ö

  • °Ë»ö Á¶°Ç
    1. guest Å×À̺íÀÇ ¸ðµç ·¹ÄÚµå °Ë»öÇÏ¿© ÀÌ ¸§°ú ³ªÀÌ Çʵ常 Ãâ·Â
    2. guest Å×ÀÌ ºíÀÇ ¸ðµç ·¹ÄÚµå °Ë»öÇÏ¿© 25»ì ÀÌÇÏÀÎ »ç¶÷µéÀÇ À̸§¸¸ Ãâ·Â
    3. guest Å×À̺íÀÇ ¸ðµç ·¹Äڵ带 ³ª ÀÌ°¡ Å« ¼ø¼­·Î Á¤·ÄÇÏ¿© À̸§°ú ³ªÀÌ Çʵ常 Ãâ·Â
    4. Àüü ³ªÀÌÀÇ Æò±Õ Ãâ·Â
  • ·¹ÄÚµå °Ë»ö ¹æ¹ý : mysql ¸í·É ¸ðµå¿¡ ¼­ SELECT ¹®À» »ç¿ë
     SELECT Ä÷³¸í [AS ±¸¹®] ,.. 
    FROM Å×À̺í¸í 
     [WHERE Á¶°Ç] 
     [ORDER BY Á¤·Ä±âÁØ Ä÷³ ACS|DESC ] 
     [GROUP BY ±¸·ìÈ­ ±âÁØ Ä÷³ ];
  • ·¹ÄÚµå °Ë»ö ¿¹Á¦:
    mysql> SELECT name,age from 
    guest;
    +--------+------+
    | name       |   age   |
    +--------+------+
    | È«±æµ¿      |    20    |
    | ±èÀ¯½Å      |    22    |
    | °­°¨Âù      |    23    |
    | À̼ø½Å      |    21    |
    | ÀÓ²©Á¤      |    30    |
    | À¯°ü¼ø      |    21    |
    | À±ºÀ±æ      |    28    |
    | ¾ÈÁß±Ù      |    33    |
    | ¹Ú¹®¼ö      |    25    |
    | Á¤Ã¶¼ö      |    55    |
    +--------+------+
    10 rows in set (0.00 sec)
    
    mysql> SELECT 
    name,age from guest where age <= 25 ;
    +--------+------+
    |   name     |   age   |
    +--------+------+
    |   È«±æµ¿   |    20     |
    |   ±èÀ¯½Å   |    22     |
    |   °­°¨Âù   |    23     |
    |   À̼ø½Å   |    21     |
    |   À¯°ü¼ø   |    21     |
    |   ¹Ú¹®¼ö   |    25     |
    +--------+------+
    6 rows in set (0.00 sec)
    
    mysql> SELECT 
    name,age from guest ORDER BY age DESC;
    +--------+------+
    |   name    |   age    |
    +--------+------+
    |   Á¤Ã¶¼ö   |    55     ||   ¾ÈÁß±Ù   |    33     |
    |   ÀÓ²©Á¤   |    30     |
    |   À±ºÀ±æ   |    28     |
    |   ¹Ú¹®¼ö   |    25     |
    |   °­°¨Âù   |    23     |
    |   ±èÀ¯½Å   |    22     |
    |   À̼ø½Å   |    21     ||   À¯°ü¼ø   |    21     |
    |   È«±æµ¿   |    20     |
    +--------+------+
    10 rows in set (0.01 sec)
    
    mysql> SELECT AVG
    (age) from guest ;
    +----------+
    |   AVG(age)   |
    +----------+
    |    27.8000    |
    +----------+
    1 row in set (0.07 sec)
    
    mysql> SELECT AVG
    (age) AS 'Æò±Õ ¿¬·É' from guest ;
    +-----------+
    |   Æò±Õ ¿¬·É     |
    +-----------+
    |     27.8000     |
    +-----------+
    1 row in set (0.01 sec)
    
    mysql>

3.12 ÆÄÀÏ·Î ºÎÅÍ ·¹ÄÚµå ÀԷ¹ޱâ¿Í °á°ú¸¦ ÆÄÀÏ ·Î ÀúÀåÇϱâ

3.12.1 ÆÄÀÏ¿¡¼­ µ¥ÀÌÅ͸¦ Å×À̺í·Î ÀÐ¾î µéÀ̱â

  • ¹æ¹ý : mysql ¸í·É ¸ðµå¿¡¼­
    LOAD DATA INFILE 'ÆÄÀÏ °æ·Î¸í' 
    INTO TABLE Å×À̺í¸í FIELDS TERMINATED BY 'Çʵ屸ºÐ
    ÀÚ';
  • ¿¹Á¦ :
    % cat > guest.txt
    NULL,¼­ÅÂÁö,22,666-
    9999,seo@jisan.ac.kr,ÁøÁÖ
    NULL,½Å½ÂÈÆ,33,999-6666,shin@jisan.ac.kr,ûÁÖ
    % mysql 
    guestbook
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 15 to server version: 3.22.22
    
    Type 'help' for help.
    
    mysql> LOAD DATA 
    INFILE '/home/prof/wiseo/guest.txt' INTO TABLE guest 
        -> FIELDS TERMINATED BY ',';=> ÆÄÀϸíÀº ¹Ýµå½Ã Àý´ë°æ·Î¸í
    Query OK, 2 rows affected (0.03 sec)
    Records: 2  Deleted: 0  Skipped: 0  Warnings: 2
    mysql>

3.12.2 Å×ÀÌºí¿¡¼­ µ¥ÀÌÅ͸¦ °Ë»öÇÏ¿© ÆÄ ÀÏ·Î Ãâ·ÂÇϱâ

  • ¹æ¹ý: mysql ¸í·É ¸ðµå¿¡¼­
    SELECT ¹® INTO OUTFILE 'Ãâ·ÂÆÄÀÏ
    ÀÇ °æ·Î¸í';
  • ¿¹Á¦ :
    mysql> SELECT * from guest where age 
    <= 25
        -> INTO 
    OUTFILE 'out.txt'
        -> FIELDS 
    TERMINATED BY ',' ; => »ó´ë°æ·Î¸íÀ» »ç¿ëÇÏ¸é ±âÁØ
    Àº DB°¡ Á¸ÀçÇÏ´Â µð·ºÅ丮
    mysql> 

¡¡

3.13 Å×À̺íÀÇ À̸§ º¯°æ°ú Ä÷³ ±¸Á¶ º¯°æ(ALTER ¹®)

3.13.1 Å×À̺í À̸§ º¯°æ

  • ¹æ¹ý: mysql ¸í·É ¸ðµå¿¡¼­
    ALTER TABLE Å×À̺í¸í RENAME »õÅ×
    À̺í¸í ;
  • ¿¹Á¦

3.13.2 Å×À̺í Ä÷³ ±¸Á¶ º¯°æ

  • ¹æ¹ý: mysql ¸í·É ¸ðµå¿¡¼­
    ALTER TABLE Å×À̺í¸í ADD Ä÷³¸í 
    Ä÷³ À¯Çü; => »õ·Î
    ¿î Ä÷³À» Ãß°¡
    ALTER TABLE Å×À̺í¸í DROP COLUMN Ä÷³¸í; => Ä÷³À» »èÁ¦ 
    
  • ¿¹Á¦

¡¡

3.13 Å×À̺íÀÇ »èÁ¦

  • ¹æ¹ý: mysql ¸í·É ¸ðµå¿¡¼­
    DROP TABLE Å×À̺í
    ¸í ;
  • ¿¹Á¦