“ 지연되는 프로젝트에 인력을 더 투입하면 오히려 더 늦어진다. ”
MYSQL란?
MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다.
MySQL은 다중 사용자, 다중 스레드 RDBMS로서, 데이터의 안정성과 보안성을 제공합니다. MySQL은 대부분의 운영 체제에서 작동하며, 웹 애플리케이션 개발, 데이터 분석, 빅 데이터, 클라우드 기반 애플리케이션 등에 많이 사용됩니다.
MySQL은 SQL(Structured Query Language)을 사용하여 데이터를 관리합니다. SQL은 데이터베이스에 저장된 데이터를 조작하기 위한 표준적인 언어로서, 데이터를 검색, 삽입, 업데이트, 삭제하는데 사용됩니다. MySQL은 이러한 SQL 문을 이용하여 데이터를 쿼리하고, 데이터의 무결성을 유지하며, 데이터베이스를 관리합니다.
MySQL은 사용이 간편하며, 대용량 데이터베이스를 처리할 수 있는 고성능 기능을 제공합니다. 또한, 오픈 소스로서, 다양한 개발자들이 지속적으로 개발 및 유지보수하고 있어, 사용자들이 다양한 문제들을 해결할 수 있는 방법을 제공합니다.
MySQL은 PHP 스크립트 언어와 상호 연동이 잘 됨녀서 오픈소스로 개발된 무료 프로그램입니다. 그래서 홈페이지나 쇼핑몰(워드프레스, CAFE24, 그누보드, 제로보드)에 일반적으로 웹개발에 널리 사용하고 있습니다.
MAMP란?
우선 저는 MAMP라는 플로그램을 사용하려고 합니다.
MAMP는 웹사이트를 개발할 때 쓰이는 기술 스택이 macos, Apache, MYSQL, php의 양자이자 솔루션 스택이다.
MAMP설치
https://www.mamp.info/en/downloads/
위 링크로 자신의 OS에 맞는 설치프로그램을 다운받습니다.
다운받고 설치가 끝나면
오른쪽 상단에 Apache server,MySQL server에 불이 들어와 있으면 완료된것입니다.
MYSQL 실행
먼저 MYSQL을 실행하기 위해서는 명령프롬포트를 통해서 로그인해야합니다.
먼저 디렉토리를 들어간 후 로그인하는데
윈도우는 cd C:\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 3
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.02 sec)
데이터베이스 만들기
- create batabase 데이터 베이스 이름;
데이터베이스를 만듭니다.
mysql> create database sample01;
Query OK, 1 row affected (0.00 sec)
데이터베이스 사용
- use 데이터 베이스;
데이터베이스를 사용할 준비를합니다. 테이블을 만들기 전에 준비합니다.
mysql> use sample01;
Database changed
데이터베이스 삭제
- drop database 데이트베이스 이름;
데이터베이스를 삭제합니다.
mysql> drop database sample01;
Query OK, 0 rows affected (0.04 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
테이블
테이블 만들기
- create table 테이블 이름;
데이터베이스에 테이블을 만듭니다.
mysql> 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;
Query OK, 0 rows affected (0.06 sec)
테이블 전체보기
- show tables;
데이터베이스에 있는 테이블을 보여줍니다.
mysql> show tables;
+--------------------+
| Tables_in_sample01 |
+--------------------+
| member |
+--------------------+
1 row in set (0.00 sec)
테이블 보기
- desc 테이블 이름;
테이블 안에 내용을 볼 수 있습니다.
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.01 sec)
테이블 삭제
- drop table 테이블 이름;
테이블을 삭제합니다.
mysql> drop table member;
Query OK, 0 rows affected (0.03 sec)
mysql> show tables;
Empty set (0.00 sec)