IT/PHP

mysql 설치

pandada 2022. 6. 10. 09:22
반응형

아파치 웹서비스를 통해서 php를 구축하였으니... 이제 mysql을 구축할 단계이다.

한번 필자와 같이 mysql 설치를 진행해보자.

https://dev.mysql.com/downloads/mysql/

 

MySQL :: Download MySQL Community Server

Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS Source Code Select OS Version: All Windows (x86

dev.mysql.com

mysql server 구축에 필요한 다운로드 링크다. 해당 링크에서 각 PC의 환경에 맞게 설치를 진행하면 된다.

 

 

해당 설치 파일을 다운로드 받고 그냥 실행해주면 된다.

뭐.. APM ( 아파치 + php + mysql )을 설치하는데.. 환경변수 설정하고.. 등등 할게 많지만.. 참고로 필자는 자바 개발자가 아니기 때문에.. 환경변수 설정으로 진행을 안하려고 한다..

솔직히 자바 개발자를 때려친 이유도 환경변수 설정에 너무 많이 탄다...

그래서 그냥 일반 서버 설치로 진행을 하려고 한다.

 

< Developer Default -> NEXT -> NEXT  >

필자는 우선 기본으로 설치를 진행할 것이다. 뭐 중간에 오류가 나면 그냥 오류가 나는데로.. 해결해나가면 될것 같으니..

그냥 무시하고 계속 NEXT... 그러면 바로 다음단계에서 이제 설치할 것들이 나오게 된다.. 그냥 다 설치 해주자 어차피 쓸모가 있기 때문이다...

 

< Execute >

설치할 내용이 많아 꾀 걸린다.. 좀 기다리면 된다. 설치가 완료되면 동일하게 NEXT 를 눌러 진행을 하자.

 

< 포트 설정 화면 >

 

 

NEXT를 진행하다보면 이제 포트를 설정하는 화면이 나온다. 참고로 mysql 은 기본포트 3306을 사용한다.

원래는 서버 관리자라면 포트도 바꾸고 다른 포트를 사용해야하지만 기본 포트로 설정을 진행하자.

그리고 만약 포트를 바꾸려면  Oracle 기본 포트인 1521도 피하고.. 원격 포트도 피하고... 8080포트도 피하자.

인증 방식은 추천하는 방식으로 설치를 진행한다.

 

< 비밀번호 설정 >

비밀번호를 설정하고 아래에는 추가 사용자 관리에 필요한 내용이다. 하지만 필자는 나중에 다른 DB 인스턴스들을 적용하고자 할때에 진행할 내용이라 그냥 공란으로 하고 진행했다.

비밀번호는 꼭 기억하자.. 추가로 요즘 보안 이슈에 대한 내용이 많음으로 비밀번호는 꼭 8자리 이상 특수문자 포함, 대문자 포함으로 작성하자.

 

< 서비스 이름 변경 >

서비스 이름을 변경할 수 있지만 변경하지 않고 그대로 넘어가자. 이후 추가 configuration을 진행하자.

설치를 진행하고 나면 현재까지 설정된 제품의 설정을 확인할 수 있다.

 

 

< 최종 완료 >

설정을 확인하고 NEXT를 눌러 최종 마무리를 진행한다.

 

< root 계정 입력 >

위에서 설정한 비밀번호를 입력하여 체크를 확인한 후 맞는지 테스트를 한 다음에 NEXT를 진행한다.

이후 추가적인 Configuration 설치를 진행한다.

이후 마지막 모든 설치까지 완료될 경우 Workbench를 설치했음으로 Workbench와 같이 mysql의 서비스가 실행된다.

 

< Mysql Command Line Client >

Mysql Command Line Client 를 실행하여 root로 로그인을하고, 이후에 정상적으로 설치되었는지 버전을 확인해보자.

 

 

< select version(); >

root 계정으로 로그인을 하고 select version();을 실행하면 이렇게 버전이 정상적으로 나오는 것을 확인할 수 있다.

추가적으로 workbench에서도 확인을 해보자.

 

< workbench 로그인 화면 >

해당 로그인 화면에서 root 계정으로 접속을 시도한 후에 동일하게 select version();을 입력하여 내용을 확인했다.

 

DB 설치까지는 끝났고.. 이제 DB의 data 파일을 D드라이브로 경로를 바꾸자. 테이블을 만들기 전에 옮기는 편이 좋다.

테이블 만들고.. 이것저것 진행한 이후에 옮기면.. 불편하게 될 수도 있으니..

mysql 에 접속하여 data 경로를 확인할 수 있는 쿼리문을 날리면 해당 데이터 영역이 표기가 된다.

< select @@datadir; >

현재의 데이터 경로는 이쪽으로 확인이 되고 있다.

C:\ProgramData\MySQL\MySQL Server 8.0\Data

확인했을 때에 기본 데이터 경로는 C드라이브의 ProgramData 하위에 존재한다.

설명 ProgramData 폴더가 보이지 않을 경우 숨긴항목 처리가 되어있음으로 해당 폴더도 볼 수 있도록 변경한다.

해당 데이터 경로를 변경하기 위해서는 경로를 만들고 해당 데이터를 똑같이 복사해주자.

 

 

< Mysql 경로 이동&nbsp; >

 

해당 필자는 ProgramData를 MYSQL_DB로 바꾸고 해당 MySQL의 폴더를 복사했다.  이제 mysql 서비스를 종료하자.

 

< 서비스 종료 >

서비스를 종료했다. 그럼 이제 my.ini 파일을 수정하자.

< my.ini >

해당 파일은 org 파일로 꼭 필수 파일이기 때문에 항상 백업을 하고 설정을 진행하자.

필자는 my_backup.ini로 백업을 해두었다. 이제 기존 my.ini파일을 수정해보자.

 

< my.ini 경로 변경 >

 

 

D드라이브로 옮겼던 my.ini을 위와 같이 변경을 했다. 관리자 권한으로 열어서 경로부분만 수정했다.

 

이제 레지스트리 편집기에 들어가서 경로 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80

해당 경로의 ImagePath를 수정한다. ImagePath는 my.ini에서 수정한 내용과 동일하게 경로를 수정해주면 된다.

 

< ImagePath 경로 변경 >

해당 내용으로 변경했다. 참고로 기존은 C로 되어있다. 해당 내용을 변경하고 서비스를 재시작 해주자.

 

< 서비스 정상 실행 >

서비스가 정상적으로 실행되는 것을 확인할 수 있었다.

그럼 이제 mysql 상에서 데이터 경로가 변경되었는지 내용을 확인해보자.

 

< 데이터 경로 변경 확인 >

데이터 경로가 변경이 정상적으로 된 내용을 확인할 수 있다.

이로써 데이터 경로도 D드라이브로 변경을 했으니.. 이제 PHP와의 연동을 진행해보자.

데이터베이스부터 생성을 하자. 현재 필자는 database를 생성하지 않았기 때문에 root 권한으로 접속해서 확인했을 때에 기본 데이터베이스밖에 없다...

< show databases; >

 

데이터 베이스부터 생성하고, 테이블도 생성하고 간단한 데이터부터 입력을 해보자. 학생 테이블을 샘플로 만들었다.

 

< create database test_db; use test_db;  >

test_db를 생성했고, use 를 사용해 현재 test_db 데이터베이스를 사용한다고 선언을 진행했다.

그럼 이제 테이블을 만들고 데이터도 넣어보자.

 

< create table / insert into >

 

CREATE TABLE student (
    sno int(11),
    name char(10) DEFAULT NULL,
    det char(20) DEFAULT NULL,
    addr char(80) DEFAULT NULL,
    tel char(20) DEFAULT NULL,
    PRIMARY KEY (`sno`)
) ENGINE=InnoDB CHARSET=utf8;
INSERT INTO student(sno, name, det, addr, tel) VALUES(1, 'abc','123','서울','010-0000-0000');
INSERT INTO student(sno, name, det, addr, tel) VALUES(2, 'efg','456','경기','010-0000-0000');
INSERT INTO student(sno, name, det, addr, tel) VALUES(3, 'hij','789','충청','010-0000-0000');
INSERT INTO student(sno, name, det, addr, tel) VALUES(4, 'klm','101112','경상','010-0000-0000');

 

create와 insert into를 이용해서 테이블을 생성하고 데이터를 넣어줬다.

가장 기본적인 내용을 끝냈으니 이제 php 파일을 만들어서 데이터베이스 연결이 잘 되는지 확인해보자.

우선 위에서 php 소스파일을 세팅한 경로인 C:\Apache24\htdocs 해당 경로에 mysql_test.php 파일을 생성하였다.

< mysql_test.php >

해당 내용을 파일을 작성하였고, 코드는 아래와 같다.

<?php
    $host = 'localhost';
    $user = 'root';
    $pw = '비밀번호';
    $dbName = 'test_db';
    $mysqli = new mysqli($host, $user, $pw, $dbName);
if($mysqli){
        echo "성공";
    }else{
        echo "실패";
    }
?>

자 그럼 이제 localhost의 경로로 이동해서 접속이 잘 되는지 안되는지 확인해보자.

< 성공 문구 확인 >

이렇게 성공 문구가 확인되면 연동은 완료된 내용이다. 참고로 앞으로 추후 php를 사용하시는 분들이라면 해당 방식으로 php소스상에서 작업을 진행하면 될것 같다.

이상으로 php mysql 설치 및 연동을 알아보았다.

phpmyadmin 사용해서 연동을 하시는 분들이 있는데.. 그렇게 세팅을 하는것 보다 필자는 어차피 IT 직군의 직업이고...

DB, WAS, 이중화 등 신경쓰는 사람이라.. 물리적으로 나눠져있어도 사용할 수 있는 방법을 설명했다.

 

반응형

'IT > PHP' 카테고리의 다른 글

Windows PHP 호출 경로 변경하기.  (0) 2022.06.10
Windows 10 apache/php 외부 방화벽 허용  (0) 2022.06.10
Window10 php 설치  (0) 2022.06.08
Ubuntu PHP 서버 구축  (0) 2022.05.30