MySQL 소개
MySQL이란?
- MySQL은 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템(RDBMS: Relational DBMS)입니다.
- MySQL은 오픈 소스이며, 다중 사용자와 다중 스레드를 지원합니다.
- 또한, C언어, C++, JAVA, PHP 등 여러 프로그래밍 언어를 위한 다양한 API를 제공하고 있습니다.
- MySQL은 유닉스, 리눅스, 윈도우 등 다양한 운영체제에서 사용할 수 있으며, 특히 PHP와 함께 웹 개발에 자주 사용됩니다.
MySQL의 장점
1. 오픈 소스 라이센스를 따르기 때문에 무료로 사용할 수 있습니다.
2. 다양한 운영체제에서 사용할 수 있으며, 여러 가지의 프로그래밍 언어를 지원합니다.
3. 크기가 큰 데이터 집합도 아주 빠르고 효과적으로 처리할 수 있습니다.
4. 널리 알려진 표준 SQL 형식을 사용합니다.
5. MySQL 응용 프로그램을 사용자의 용도에 맞게 수정할 수 있습니다.
MySQL의 단점
- MySQL은 관계형 데이터베이스 관리 시스템(RDBMS)으로, 데이터베이스를 관리하거나 자료를 관리하기 위한 GUI 관리툴은 내장되어 있지 않다.

MySQL의 역사
- MySQL은 1995년 5월에 MySQL AB사에 의해 첫 번째 버전이 발표됩니다.
- 그리고 1998년에는 윈도우 버전(Windows 95와 NT)의 MySQL이 발표됩니다.
- 2008년에 썬 마이크로시스템즈사가 MySQL AB를 인수함과 동시에 5.1 버전을 발표합니다.
- 이후 2009년에 썬 마이크로시스템즈사가 오라클과 인수 합병됨에 따라 MySQL에 대한 권리가 오라클로 넘어가게 됩니다.
프로그래밍 언어
- 응용 프로그램에서 MySQL DB에 접근하기 위해 다수의 프로그래밍 언어로 된 API를 사용할 수 있다. 이들 API는 언어에 종속적이다.
- MySQL은 공식적으로 아래의 프로그래밍 언어를 지원한다.
- C/C++
- C#/F#
- 볼랜드 델파이 (dbExpress를 통한)
- 자바 (네이티브 자바 드라이버를 통한)
- 파이썬
- 루비
- REALbasic (매킨토시 계열)
- 프리베이직
- 스몰토크
- Eiffel
- 리스프
- 펄
- Tcl
- PHP · PHP4 · PHP5 · PHP6
- 델파이1 · 델파이2 · 델파이3 · 델파이4 · 델파이5 · 델파이6 · 델파이7 · 델파이8
- 델파이2007 · 델파이2008 · 델파이2009
- 파파라치
- MySQL은 MyODBC라고 불리는 ODBC 인터페이스를 지원해서 다른 프로그래밍 언어를 지원한다. 그 예로 ASP와 콜드퓨전을 들 수 있다. MySQL은 대부분 ANSI C로 구현되었다.
MySql 특징
- Oracle이 만듦, DBMS 소프트웨어의 일종
- DBMS는 "데이터베이스(데이터 집합)을 관리 운영" 역할
- 데이터베이스는 동시에 여러명이 접근 가능 (엑셀 파일은 다른사람이 쓰고있으면 Read Write 동시 불가)

- DBMS 종류 및 대부분 자주 쓰이는 것들

- 데이터의 무결성(Integrity)을 위해 제약조건(Constraint)이 있음 (데이터가 손상없이 온전히 보존되어야 함)
- 데이터의 독립성 (데이터베이스의 환경, 저장소 등이 바뀌어도 내부 데이터는 영향이 없어야 함)
- 보안 (오직 허용된 사용자만의 제한된 권한으로 접근 가능 여부 컨트롤)
- 여러 데이터의 중복을 최소화 시킴
- DB기반으로 응용프로그램 제작이 쉬움(공통된 DB포맷을 사용하므로)
- 백업 복원기능이 있어 깨지는 것을 방지
- 파일시스템은 데이터가 너무 많으면 용량이 커지고 다루기 힘듦 -> 데이터베이스를 사용해야 되는 이유 (대량 데이터를 다루는데 용이)
- 이 데이터베이스(DB)를 컨트롤 하기 위한 언어(language)가 "SQL언어" 이다.
- 대부분 많이 사용하는 것은 Database Model은 관계형DBMS (Relational DBMS). (최근 MongoDB를 제외하고 전부)

- SQL(Structural Query Language)은 표준SQL이 있고 각 회사별 강점을 살린 SQL이 있음. 그러나 모두 표준 SQL을 공유

- 표준SQL은 표준이기 때문에 다른 SQL으로 이전할때 이식성이 좋음.
- 파이썬과 마찬가지로 대화형(Interactive형) 언어
- Oracle Corporation에서 개발, 배포 및 지원합니다.
- 데이터베이스를 만들고 조작하는 데 사용되는 SQL (Structured Query Language) 표준화 된 언어를 기반으로하는 강력하고 유연하며 확장 가능한 교차 플랫폼 관계형 데이터베이스입니다.
- MySQL 데이터베이스 소프트웨어는 오픈 소스이며 GPL (GNU General Public License)을 사용합니다.
- MySQL 작동 원리
- 대부분의 데이터베이스 관리 시스템과 마찬가지로 MySQL에는 클라이언트-서버 아키텍처가 있으며 네트워크 환경에서 사용할 수 있습니다.
- 서버 프로그램은 데이터베이스 파일이 저장된 동일한 물리적 또는 가상 시스템에 상주하며 데이터베이스와의 모든 상호 작용을 담당합니다.
- 데이터베이스 관리를 위한 MySQL 도구 또는 다른 프로그래밍 언어로 작성된 애플리케이션과 같은 다양한 클라이언트 프로그램은 서버에 연결하여 데이터베이스 요청을 할 수 있습니다. 서버는 클라이언트 요청을 처리하고 결과를 다시 클라이언트에 반환합니다.
- 클라이언트는 서버와 동일한 시스템 또는 원격 호스트에 상주하고 네트워크 또는 인터넷 연결을 통해 서버에 데이터베이스 요청을 보낼 수 있습니다. 중요한 것은 클라이언트가 연결하려면 MySQL 서버가 실행 중이어야한다는 것입니다.

MySQL의 주요 기능
MySQL은 독립 모듈이있는 다중 계층 서버 설계를 사용합니다. 서버는 다중 스레드, 다중 사용자, 확장 가능하고 미션 크리티컬 한 고부하 프로덕션 시스템을 위해 견고하게 설계되었습니다. 트랜잭션 및 비 트랜잭션 저장소 엔진을 모두 제공하고 다른 저장소 엔진 추가를 지원합니다.
- MySQL uses very fast B-tree tables with index compression, a very fast thread-based memory allocation system, and executes very fast joins using optimized nested-loop join.
- It supports many data types such as signed/unsigned integers, floating-point types(float and double), char and varchar, binary and varbinary, blob and text, Date, DateTime, and timestamp, year, set, enum, and OpenGIS spatial types.
- MySQL also supports data redundancy, and high-availability (HA) via master-slave replication, multi-node clustering, and backup and recovery/restore. It offers a wide range of backup types and strategies from which you can choose the methods that best suit the requirements for your deployment.
- Its security features include user account management and access control, host-based verification, encrypted connections, several components and plugins (such as authentication plugins, connection-control plugins, password-validation component and many more) that implement security, as well as FIPS (Federal Information Processing Standards 140-2 (FIPS 140-2)) mode on the server-side which applies to cryptographic operations performed by the server.
유용한 MySQL 기사
- How to Install the Latest MySQL 8 on Debian 10
- 15 Useful MySQL/MariaDB Performance Tuning and Optimization Tips
- Useful Tips to Troubleshoot Common Errors in MySQL
- How to Reset Root Password in MySQL 8.0
- How to Change Default MySQL/MariaDB Port in Linux
- 4 Useful Commandline Tools to Monitor MySQL Performance in Linux
How to Install WordPress with Apache in Ubuntu 20.04
This guide shows how to install the latest version of Wordpress with Apache in Ubuntu 20.04.
www.tecmint.com
참조
MySQL - 위키백과, 우리 모두의 백과사전 (wikipedia.org)
MySQL - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. MySQL(마이에스큐엘, )[2]은 세계에서 가장 많이 쓰이는[3] 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)이다.[4] 다중 스레드, 다중 사용자 형식의 구조질의
ko.wikipedia.org
코딩교육 티씨피스쿨
4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등
tcpschool.com
MySQL
Over 2000 ISVs, OEMs, and VARs rely on MySQL as their products' embedded database to make their applications, hardware and appliances more competitive, bring them to market faster, and lower their cost of goods sold. Learn More »
www.mysql.com
MySQL :: MySQL 8.0 Reference Manual
MySQL 8.0 Reference Manual Including MySQL NDB Cluster 8.0 Abstract This is the MySQL Reference Manual. It documents MySQL 8.0 through 8.0.32, as well as NDB Cluster releases based on version 8.0 of NDB through 8.0.29-ndb-8.0.30, respectively. It may inclu
dev.mysql.com
https://ansan-survivor.tistory.com/1129 [안산드레아스:티스토리]
[MySQL] MySQL이란? DBMS란? Database란?
요약 정리. Oracle이 만듦, DBMS 소프트웨어의 일종 DBMS는 "데이터베이스(데이터 집합)을 관리 운영" 역할 데이터베이스는 동시에 여러명이 접근 가능 (엑셀 파일은 다른사람이 쓰고있으면 Read Write
ansan-survivor.tistory.com