웹사이트 검색

MySQL이란 무엇입니까? MySQL은 어떻게 작동하나요?


MySQL은 Facebook, Google, Adobe, Alcatel Lucent 및 Zappos에서 사용되는 세계에서 가장 인기 있는 엔터프라이즈급 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 그리고 많은 온라인 웹사이트/애플리케이션을 통해.

Oracle Corporation에서 개발, 배포 및 지원합니다. 이는 데이터베이스를 생성하고 조작하는 데 사용되는 SQL(구조적 쿼리 언어) 표준화 언어를 기반으로 하는 강력하고 유연하며 확장 가능한 크로스 플랫폼 관계형 데이터베이스입니다.

MySQL의 최신 버전(작성 당시 버전 8.0)은 NoSQL(“SQL뿐만 아니라)을 지원합니다. Strong> ”) 문서 데이터베이스. Linux, macOS 및 기타 UNIX 계열 운영 체제와 Windows에 설치할 수 있습니다.

MySQL 다운로드

  • MySQL 커뮤니티 에디션 다운로드
  • MySQL 엔터프라이즈 에디션 다운로드

MySQL 데이터베이스 소프트웨어는 오픈 소스이며 GPL(GNU General Public License)을 사용합니다. 중요한 것은 이 버전이 두 가지 버전, 즉 다운로드하여 소스 코드에 액세스하고 무료로 사용할 수 있는 오픈 소스 MySQL 커뮤니티 서버와 독점 MySQL Enterprise 버전으로 제공된다는 것입니다. 연간 구독이 필요하고 전문적인 지원 및 기타 다양한 혜택이 포함된 에디션 및 기타 상용 제품입니다.

MySQL은 웹 데이터베이스(가장 일반적으로 사용됨), 데이터 웨어하우징, 전자상거래, 로깅 애플리케이션 등 다양한 목적으로 사용됩니다. 이는 LAMP(Linux + Apache + MySQL + )를 설정하기 위해 일반적으로 설치되는 소프트웨어 중 하나입니다. >PHP) 또는 LEMP(Linux + Engine-X + MySQL + PHP ) 웹 개발 및 WordPress, Magneto, Joomla, Drupal<과 같은 온라인 콘텐츠 관리 시스템 호스팅에 사용되는 스택 외 다수. PHP 외에도 Perl, Node.js, Python 등을 포함한 많은 다른 언어도 지원합니다.

Linux에서 MySQL 데이터베이스를 사용하여 애플리케이션을 설정하는 방법에 대한 관련 가이드를 확인하세요.

  • CentOS 8에 LAMP 서버를 설치하는 방법
  • CentOS 8에 LEMP 서버를 설치하는 방법
  • Ubuntu 20.04에서 PhpMyAdmin을 사용하여 LAMP 스택을 설치하는 방법
  • Ubuntu 20.04에서 PhpMyAdmin을 사용하여 LEMP 스택을 설치하는 방법
  • Ubuntu 20.04에서 Apache와 함께 WordPress를 설치하는 방법

MySQL은 어떻게 작동하나요?

대부분의 데이터베이스 관리 시스템과 마찬가지로 MySQL은 클라이언트-서버 아키텍처를 갖추고 있으며 네트워크 환경에서 사용할 수 있습니다. 서버 프로그램은 데이터베이스 파일이 저장되어 있는 동일한 물리적 또는 가상 시스템에 상주하며 데이터베이스와의 모든 상호 작용을 담당합니다.

데이터베이스 관리를 위한 MySQL 도구나 다른 프로그래밍 언어로 작성된 애플리케이션과 같은 다양한 클라이언트 프로그램이 서버에 연결하여 데이터베이스를 요청할 수 있습니다. 서버는 클라이언트 요청을 처리하고 결과를 클라이언트에 다시 반환합니다.

클라이언트는 서버와 동일한 시스템에 있거나 원격 호스트에 상주할 수 있으며 네트워크 또는 인터넷 연결을 통해 서버에 데이터베이스 요청을 보낼 수 있습니다. 중요한 점은 클라이언트가 연결하려면 MySQL 서버가 실행 중이어야 한다는 것입니다.

MySQL의 주요 기능

MySQL은 독립 모듈을 갖춘 다층 서버 설계를 사용합니다. 이 서버는 다중 스레드, 다중 사용자, 확장 가능하며 업무상 중요하고 로드가 많은 생산 시스템을 위해 견고하게 설계되었습니다. 트랜잭션 및 비트랜잭션 스토리지 엔진을 모두 제공하고 다른 스토리지 엔진 추가를 지원합니다.

  • MySQL은 매우 빠른 스레드 기반 메모리 할당 시스템인 인덱스 압축 기능이 있는 매우 빠른 B-트리 테이블을 사용하고 최적화된 중첩 루프 조인을 사용하여 매우 빠른 조인을 실행합니다.
  • 부호 있는/부호 없는 정수, 부동 소수점 유형(float 및 double), char 및 varchar, 바이너리 및 varbinary, blob 및 텍스트, 날짜, 날짜 시간 및 타임스탬프, 연도, 집합, 열거형 및 OpenGIS 공간과 같은 다양한 데이터 유형을 지원합니다. 유형.
  • MySQL은 또한 마스터-슬레이브 복제, 다중 노드 클러스터링, 백업 및 복구/복원을 통해 데이터 중복성과 고가용성(HA)을 지원합니다. 이는 배포 요구 사항에 가장 적합한 방법을 선택할 수 있는 다양한 백업 유형과 전략을 제공합니다.
  • 보안 기능에는 사용자 계정 관리 및 액세스 제어, 호스트 기반 확인, 암호화된 연결, 보안을 구현하는 여러 구성 요소 및 플러그인(예: 인증 플러그인, 연결 제어 플러그인, 비밀번호 유효성 검사 구성 요소 등) 및 FIPS가 포함됩니다. (연방 정보 처리 표준 140-2(FIPS 140-2)) 서버에서 수행되는 암호화 작업에 적용되는 서버 측 모드입니다.

또한 Linux용 MySQL/MariaDB 보안 모범 사례를 따르면 추가 보안을 보장할 수도 있습니다. 그러나 항상 그렇듯이, 전반적인 데이터베이스 서버 보안을 보장하려면 우수한 네트워크 및 서버 보안을 구현했는지 확인하십시오.

MySQL 클라이언트 및 도구

MySQL에는 데이터베이스 관리를 위한 인기 있는 명령줄 유틸리티인 mysql, mysqladmin 및 mysqldump와 같은 여러 클라이언트 프로그램이 함께 제공됩니다. MySQL 서버에 연결하기 위해 클라이언트는 여러 프로토콜(예: 모든 플랫폼의 TCP/IP 소켓 또는 Linux와 같은 UNIX 시스템의 UNIX 도메인 소켓)을 사용할 수 있습니다.

다른 언어나 환경에서 MySQL 문을 연결하고 실행하기 위해 표준 기반 MySQL 커넥터(클라이언트 애플리케이션을 위해 MySQL 서버에 대한 연결 제공)와 가장 널리 사용되는 프로그래밍 언어용 API(다음을 사용하여 MySQL 리소스에 대한 저수준 액세스 제공)가 있습니다. 클래식 MySQL 프로토콜 또는 X 프로토콜 중 하나).

널리 사용되는 커넥터 및 API로는 ODBC(Open Database Connectivity), Java(JDBC – Java Database Connectivity), Python, PHP, Node.js, C++, Perl, Ruby, 네이티브 C 및 임베디드 MySQL 인스턴스가 있습니다.

MySQL에 관한 다음 기사가 유용할 것입니다.

  • Debian 10에 최신 MySQL 8을 설치하는 방법
  • 15가지 유용한 MySQL/MariaDB 성능 조정 및 최적화 팁
  • MySQL의 일반적인 오류를 해결하는 데 유용한 팁
  • MySQL 8.0에서 루트 비밀번호를 재설정하는 방법
  • Linux에서 기본 MySQL/MariaDB 포트를 변경하는 방법
  • Linux에서 MySQL 성능을 모니터링하는 4가지 유용한 명령줄 도구