project

[APM 구축] (3) MySQL 설치 및 PHP와 연동

cheda 2021. 11. 7. 15:49
  • MySQL: 오픈소스 데이터베이스 관리 시스템

 

참고한 블로그: [꼼꼼한 블로그] https://jimnong.tistory.com/614

 

1. MySQL 다운로드

 

2. 원하는 경로에 압축 해제

3. 환경변수 등록

  • 시스템 > 고급 시스템 설정 > 고급 탭 > 시스템 변수 Path > 새로 만들기
  • "MySQL 설치경로\bin"

 

4. 옵션파일 생성 (기본설정 지정)

  • 옵션파일을 생성하지 않으면 DB 데이터가 MySQL 설치경로 하위의 data 폴더로 자동지정된다.
  • MySQL 설치경로에 my.ini 파일 생성
    → 메모장 > 새 파일 > 다른 이름으로 저장
    → 파일 이름을 my.ini로 하고, 파일 형식은 모든 파일, 인코딩 옵션은 ANSI 또는 ASCII로 설정해야 한다(UTF-8로 할 경우 오류발생).

 

  • MySQL 실행 시 설정파일 탐색경로 순서
    (1) Windows 디렉토리(%WINDIR%)
    (2) C:\
    (3) MySQL 설치경로(basedir)
    → 따라서 셋 중 하나의 위치에 옵션파일을 저장하면 된다. 여러 위치에 존재할 경우 나중에 읽은 파일 우선적용
    → 옵션파일은 my.ini와 my.cnf가 있다. 컴퓨터는 ini 파일을 먼저 찾고 cnf 파일을 나중에 찾는다.
  • my.ini 파일의 기본적인 형식은 아래와 같다.
    [mysqld]
    # set basedir to your installation path
    basedir=D:/mysql
    # set datadir to the location of your data directory
    datadir=D:/mysql/data
    port=3306
  • 폴더경로는 백슬래시(\)가 아닌 슬래시(/)로 쓴다. 백슬래시를 쓰고 싶다면 백슬래시 2개(\\)를 써주어야 하나로 인식한다.
  • basedir 경로: mysql 압축을 푼 위치, datadir 경로: DB데이터가 저장되길 원하는 공간, port: 기본포트 설정
  • 추가로 원하는 항목은 레퍼런스 매뉴얼을 찾아서 추가
  • 사진상에 방금 설명한 옵션 외의 옵션이 이후에 추가한 내용이다.
    [mysql]
    default-character-set=utf8
    [mysqld]
    character-set-server=utf8
    위 부분은 후에 DB를 생성하고 한글을 삽입한 후, DB 내용을 출력했을 때 한글이 깨지는 현상을 방지하기 위해 삽입하였다.

 

5. mysql 구동을 위한 기본 system DB (root 계정) 생성

  • 명령프롬프트를 관리자 권한으로 실행
  • mysqld.exe --initialize 입력

 

  • MySQL 설치경로에 data 폴더가 생성된 것을 확인할 수 있다.
  • data 폴더 내 에러로그 파일(.err)에서 마지막 줄에 임시로 생성된 root 계정 비밀번호를 확인할 수 있다.
  • cmd > (MySQL 설치경로)\mysql.exe -- install 입력: MySQL을 윈도우 서비스에 등록 (삭제는 -- remove)
  • 제어판 > 관리도구 > 서비스 > MySQL 시작
    → 관리도구 > 서비스 대신 직접 명령프롬포트에서 실행할 경우: net start mysql / net stop mysql

 

  • cmd > mysql -u root -p
    Enter password: 에서 임시비밀번호를 입력
    -u 옵션: 접속할 mysql 계정명 입력을 위한 옵션 (root 또는 생성한 계정)
    → -p 옵션: 패스워드를 입력하기 위한 옵션
  • mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘새 비밀번호’;
  • 바뀐 비밀번호 테스트: \q를 입력하여 mysql 모니터를 빠져나온다.
  • cmd > mysql -u root -p를 다시 한 번 입력 후 패스워드를 입력해본다. mysql 모니터에 정상적으로 진입하면 성공

 

6. MySQL 테스트

  • mysql > show databases;
  • 잘 나오면 성공

7. PHP와 연동: php.ini 파일 수정

  • php 설치디렉토리에서 php.ini 파일을 연다.
  • Dynamic Extensions 구문을 찾아 아래 확장 dll들에 대한 세미콜론(;) 주석처리를 풀어주고 저장
    ;extension=mysqli
    ;extension=pdo_mysql

 

  • 아파치 서비스 재시작
    cmd > httpd.exe –k restart

 

웹브라우저 주소창에 http://localhost/mysqltest2.php 라고 입력