Mysql 데이타 베이스 설치하기-윈도우10

MySQL은 1995년에 신랑 모딕와 마틴 마이크로스에서 개발되었습니다. 그 초기 버전은 단순한 데이터 베이스 엔진으로, 제한된 수의 클라이언트 툴만을 제공했지만, 빠르게 성장한 개발자 커뮤니티와 함께 기능적인 향상과 추가적인 많은 기능들이 지속적으로 발표되어 왔습니다.

2000년대 초반에는 MySQL AB(오픈 소스 회사)의 대표인 마틴 미쉐르 미카스토 레카와 팀에 의해 MySQL은 상용 소프트웨어 및 글로벌 비즈니스 규모에서도 사용될 수 있는 솔루션으로 성장해왔습니다.

2010년 1월, 선 마이크로시스템즈 인수 이후 오라클 이 MySQL의 소유자가 되었습니다. 하지만 MySQL은 오라클의 소유하에서도 오픈 소스 데이터베이스로 계속해서 개발되며, 오라클은 MySQL의 무료 사용 및 부분 유료 사용 조건들을 존중하였습니다.

그 결과, MySQL은 여전히 강력하고 널리 사용되는 관계형 데이터베이스 관리 시스템 중 하나입니다. 현재 MySQL은 오픈 소스 커뮤니티에 의해 유지 보수되고, 개발중이며 계속해서 발전하고 있습니다.

MySQL 다운로드

다음 링크에서 MYSQL를 다운로드합니다. https://dev.mysql.com/downloads/mysql/
Windows (x86, 64-bit), ZIP Archive 를 다운로드 합니다.

다운로드 버튼을 누르고 당황하지 말고 제일 하단에 “No thanks, just start my download”를 클릭 하면 바로 다운로드 가능 합니다. 다운로드한 파일을 원하시는 경로에 압축 해제 하고 폴더명을 MySQL로 바꿔 줍니다.

MySQL 설정값 변경

메모장을 사용하여 아래 내용을 입력하고 MySQL 폴더 아래에 my.ini 라는 파일명으로 저장을 합니다.

[mysqld]
basedir=C:/압축 해제한 폴더명/MySQL
datadir=C:/압축 해제한 폴더명/Mysql/data
port=3306

메모장을 사용 할 경우 파일 형식은 모든 파일, 인코딩은 ANSI 로 해서 저장을 합니다.

MySQL system DB 생성

이제 MYSQL을 구동하기 위한 기본 DB를 생성해야 하는데요, cmd를 관리자 권한으로 실행하고 MySQL 폴더로 이동 하고 기본 DB를 생성 합니다.

cd /압축 해제한 폴더명/MySQL/bin
mysqld.exe --initialize 

위와 같이 실행이 완료되면 압축 해제한 폴더 안에 data라는 폴더가 생성됩니다.
C:/압축 해제한 폴더/Mysql/data/내PC이름.err 이라는 파일을 메모장으로 열어보면 제일 마지막에 MYSQL root 계정의 임시비밀번호가 생성되었다는 메세지를 확인할 수 있습니다.

A temporary password is generated for root@localhost: 임시비밀번호

“ctrl+c”로 임시비밀번호를 메모장에 복사 해두고 임시비밀번호를 이용하여 로그인을 해 봅시다.

MYSQL 서비스 설치/게시

cd /압축 해제한 폴더명/MySQL/bin mysqld.exe --install net start mysql

“MySQL 서비스를 시작합니다. MySQL 서비스가 잘 시작되었습니다.” 라고 하네요.

MYSQL 접속

cmd 창에서 mysql -u root -p 를 입력하면 패스워드를 입력 하라고 나온다. 메모장에 붙여 두었던 임시비밀번호를 직접 입력 하면 된다.

MYSQL root 비밀번호 변경하기

임시비밀번호를 사용하여 MySQL에 접속한 것이기 때문에 비밀번호를 변경하셔야 합니다.
MySQL에 현재 접속된 상태이기 때문에 cmd 창에서 아래의 명령어를 입력하면 변경이 됩니다.

ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '변경할비밀번호';

MYSQL DB 만들기

MySQL에 접속한 상태에서 아래의 명령어를 사용하면 데이타 베이스를 생성, 삭제, 확인해 볼 수 있습니다.

create database test; --> 데이타 베이스 생성 합니다.
drop database test; --> 데이타 베이스 삭제 합니다.
show databases; --> 현재 생성된 데이타 베이스를 보여 줍니다.
 

명령어 끝에 항상 세미콜론( ; ) 을 붙여 줍니다.

MYSQL과 PHP 연동

php에서 MySQL에 접근하기 위해 php 설정파일 (C:\APM\php\php.ini-production)을 수정해줍니다.
설정파일을 메모장을 사용하여 아래 문구를 찾아 맨 앞에 세미콜론 ( ; ) 를 삭제해 줍니다.

extension=mysqli
extension=mysqli
extension=pdo_mysql

cmd를 관리자 모드로 실행하여 Apache를 재실행 해줍니다.

cd /압축 해제한 폴더명/Apache/bin httpd -k restart

이제 모든 설정이 끝났습니다. php가 MySQL과 제대로 연동이 되었는지 확인해보겠습니다.

MYSQL과 PHP 연동 테스트

메모장을 사용하여 아래의 내용으로 Apache의 DocumentRoot에 mysqltest.php 파일을 만들고 (파일 형식은 UTF-8로 저장해 줍니다.) 웹브라우저에서 확인 해 보겠습니다.
DocumentRoot 는 웹문서가 저장되는 장소로 C:/압축 해제한 폴더명/Apache24/htdocs 입니다.

<?php
$user = "root";
$pass = "MySQL 비밀번호";
$host = "localhost";
$dbdb = "mysql";
$conn = new mysqli($host, $user, $pass, $dbdb);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "It works, Connected successfully";
?>

이제 웹브라저에서http://localhost/mysqltest.php 로 접속 해봅니다. “It works, Connected successfully” 이문구가 나온다면 성공 하신 겁니다.

MySQL은 웹 애플리케이션과 다양한 소프트웨어 시스템에서 데이터를 저장하고 관리하는 데에 주로 사용됩니다. 다음은 MySQL에 대한 몇 가지 중요한 포인트들입니다:

RDBMS: MySQL은 관계형 데이터베이스 관리 시스템이기 때문에 데이터는 테이블의 형태로 구성됩니다. 각 테이블은 행과 열로 구성되며, 데이터는 이러한 행과 열에 저장됩니다.

오픈 소스: MySQL은 오픈 소스 프로젝트이므로 무료로 사용할 수 있습니다. 이는 개발자들이 비용을 절감하면서도 강력한 데이터베이스 솔루션을 활용할 수 있다는 장점을 제공합니다.

다양한 플랫폼 지원: MySQL은 다양한 운영 체제와 플랫폼에서 사용할 수 있습니다. Windows, Linux, macOS 등을 비롯한 다양한 운영 체제에서 동작합니다.

다양한 언어 지원: MySQL은 다양한 프로그래밍 언어에서 사용할 수 있습니다. PHP, Python, Java, C++, C# 등 여러 언어를 지원하여 다양한 언어로 개발된 애플리케이션과 통합할 수 있습니다.

성능: MySQL은 높은 성능을 제공하도록 최적화되어 있습니다. 대규모 데이터베이스를 효율적으로 처리할 수 있으며, 쿼리의 실행 속도를 최적화하여 빠른 응답을 제공합니다.

보안: MySQL은 데이터베이스 보안에 중요한 역할을 할 수 있습니다. 사용자 기반의 접근 제어, 암호화, SSL 지원 등 다양한 보안 기능을 제공합니다.

커뮤니티 지원: MySQL은 활발한 개발자 커뮤니티와 사용자 커뮤니티를 가지고 있습니다. 이러한 커뮤니티를 통해 문제 해결, 지원, 기능 개선 등 다양한 정보를 얻을 수 있습니다.

MySQL은 웹 개발, 애플리케이션 개발, 데이터 분석, 데이터 저장 등 다양한 분야에서 널리 사용되고 있으며, 지속적으로 발전하고 있습니다. 데이터베이스 관련 작업을 수행할 때 MySQL을 고려하는 것이 유용할 수 있습니다.

MySQL 버전 정보

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)으로, 주요 버전들과 그들의 특징은 다음과 같습니다.

  1. MySQL 3.x:
  • 이 버전부터 MySQL이 클라이언트/서버 구조로 개발되었습니다.
  • 기본적인 쿼리 처리 기능을 지원합니다.
  1. MySQL 4.x:
  • 2002년에 출시되었습니다.
  • InnoDB 스토리지 엔진 도입으로 로우 레벨 락을 지원하기 시작했습니다.
  • 쿼리 캐시와 풀텍스트 인덱싱도 도입되어 성능 개선에 기여하였습니다.
  1. MySQL 5.x:
  • 2005년에 출시되었습니다.
  • 스토어드 프로시저, 트리거, 뷰, 커서 등의 고급 RDBMS 기능이 추가되었습니다.
  • 외부 키 지원 및 파티셔닝 등과 같은 확장된 기능도 제공합니다.
  1. MySQL 8.x:
  • 현재 최신 버전인 MySQL 8.0은 비동기식 복제 및 JSON 데이터 타입 등 다양한 기능을 제공합니다.
  • utf8mb4를 default character set으로 변경하여 유니코드의 전체 범위를 포괄할 수 있게 되었습니다
  • 보다 강화된 보안 설정 및 최적화된 성능
  • Common Table Expressions (CTEs)와 Window Functions같은 SQL문법 강화

MySQL 버전마다 많은 업데이트와 개선판이 있으므로 차별점과 디자인 체계를 이해하는 것이 중요합니다. 사용 목적에 맞는 최신 안정판을 선택하는 것을 권장드리며, 8.0으로 업데이트되면서 새로운 기능을 넣기 위해 하위 호환을 많이 포기했으므로, 버전 업데이트 시 주의할 필요가 있겠습니다.

MySQL

Apache 웹서버 설치하기-윈도우10

프로그래밍 언어-PHP (Hypertext Preprocessor) 설치하기