WEB/STUDY_note

MySQL 이해하기

aimee418 2023. 3. 13. 23:41

“ 지연되는 프로젝트에 인력을 더 투입하면 오히려 더 늦어진다. ”

- Frederick Philips Brooks
Mythical Man-Month 저자
728x90
반응형

MySQL 이해하기

MySQL은 오픈소스 관계형 데이터베이스 관리 시스템(RDBMS) 중 하나입니다.

MySQL은 데이터를 구조화하고 저장하기 위한 강력한 도구를 제공합니다.
그리고 데이터를 쉽게 추가, 수정, 삭제하고 검색할 수 있습니다.

MySQL은 다양한 운영 체제에서 실행될 수 있으며, 다양한 프로그래밍 언어와 함께 사용할 수 있습니다.

MySQL을 사용하면 대규모 데이터베이스를 효율적으로 관리할 수 있으며, 빠른 처리와 안정성을 제공할 수 있습니다.

MySQL은 PHP스크립트 언어와 상호 연동이 잘 되면서 오픈소스로 개발된 무료프로그램입니다. 그래서 홈페이지나 쇼핑몰(워드프레스, Cafe2, 그누보드, 제로보드)등 가장 일반적으로 웹 개발에 널리 사용하고 있습니다.

 

 

// 서버로 사용될 PC에 설치

MySQL설치

MAMP란 웹사이트를 개발할 때 쓰이는 기술 스택인 macOS, Apache, MySQL, PHP의 약어이자 솔루션 스택이다.
https://www.mamp.info/en/downloads/
 

Downloads - MAMP & MAMP PRO

NAMO DNS AppThe perfect MAMP companion Access your MAMP websites under a fixed domain name in the LAN instead of just an IP address. Perfect for testing on mobile devices. Try Now Buy NAMO Learn more

www.mamp.info

 

MySQL 실행

1) window + r 

2) cmd + enter

 

윈도우 : cd MAMP/bin/mysql/bin
로그인 : mysql -uroot -proot
맥 : cd /Applications/MAMP/Library/bin
로그인 : ./mysql -uroot -proot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.24 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

데이터베이스

 

데이터베이스 보기

명령어 > show databases;

show databases;
 mysql> show databases;
 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | mysql              |
 | performance_schema |
 | sys                |
 +--------------------+
 4 rows in set (0.01 sec)

 

데이터베이스 만들기

명령어 > create database 데이터베이스 이름;

create database sample01;
mysql> create database sample01;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sample01           |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

 

데이터베이스 사용

명령어 > use 데이터베이스 이름;

use sample01;
mysql> use sample01;
Database changed

 

데이터베이스 삭제

명령어 > drop database 데이터베이스 이름;

drop database sample01;
mysql> drop database sample01;
Query OK, 0 rows affected (0.02 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

 

 

테이블

테이블만들기

명령어 > create table 테이블이름;

create table member;
create table member (
    myMemberID int(10) unsigned auto_increment,
    youEmail varchar(40) NOT NULL,
    youName varchar(20) NOT NULL,
    youPass varchar(20) NOT NULL,
    youBirth int(20) NOT NULL,
    youAge int(5) NOT NULL,
    regTime int(20) NOT NULL,
    PRIMARY KEY (myMemberID)
) charset=utf8

 

테이블 전체보기

명령어 > show tables;

show tables;
mysql> show tables;
+--------------------+
| Tables_in_sample01 |
+--------------------+
| member             |
+--------------------+
1 row in set (0.00 sec)

 

테이블보기

명령어 > desc 테이블이름;

desc member;
mysql> desc member;
+------------+------------------+------+-----+---------+----------------+
| Field      | Type             | Null | Key | Default | Extra          |
+------------+------------------+------+-----+---------+----------------+
| myMemberID | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| youEmail   | varchar(40)      | NO   |     | NULL    |                |
| youName    | varchar(20)      | NO   |     | NULL    |                |
| youPass    | varchar(20)      | NO   |     | NULL    |                |
| youBirth   | int(20)          | NO   |     | NULL    |                |
| youAge     | int(5)           | NO   |     | NULL    |                |
| regTime    | int(20)          | NO   |     | NULL    |                |
+------------+------------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)

 

테이블삭제

명령어 > drop table 테이블이름;

drop table member;
mysql> drop table member;
Query OK, 0 rows affected (0.01 sec)
mysql> show tables;
Empty set (0.00 sec)