phpMyAdmin 구축 및 사용

흑이·2022년 1월 23일
0

현업에서 phpMyAdmin을 접속하여 간단하게 데이터를 수정해본 기억이 있어

이번 2차 프로젝트에서 구축 및 사용해보기로 해봤다...
Workbench 가 간편하다..


phpMyAdmin 이란?

  • php 기반 웹사이트로, mysql을 GUI로 관리할 수 있는 무료 소프트웨어 도구이다.
  • phpmyadmin을 사용하면, 콘솔에서 작업하는 것보다 쉽게 DB 작업을 할 수 있다.
  • 즉 MySQL 데이터베이스와 상호 작용하고, 사용자 계정 및 권한을 관리하며, SQL 문을 실행하고, 다양한 데이터 형식으로 데이터를 가져오고 내보낼 수 있습니다.

구축 과정

AWS 의 EC2에서

  • $sudo apt install phpmyadmin

  • 웹서버를 선택하라고 한다.. nginx를 사용하니 tab키로 이동

  • database(MySQL) 추가 설치 여부를 확인하는 질문이다. 미리 MySQL을 설치했기 때문에 No를 선택

php-fpm 설치

  • PHP-fpm이란?
    PHP-fpm 은 PHP FastCGI Process Manger의 약자로, CGI보다 빠른 버전이라고 말할 수 있다.

  • CGI란, 웹 서버에서 요청을 받아 외부 프로그램에 넘겨주면, 외부 프로그램은 그 파일을 읽어 html로 변환하는 단계를 거치는 것을 말한다. Fast CGI는 요청할때마다 이미 생성된 프로세스를 가지고 구동하기 때문에 처리가 CGI보다 빠르다.

  • Apache에서는 php모듈이 있기 때문에 처리가 가능하지만, nginx에서는 php-fpm을 따로 설치해 연동을 해주어야 한다.


  • $ sudo apt install php-fpm

아래와 같이 index.php파일을 작성한다.

  • 인스턴스 ip 주소/index.php 로 접속하게 되면 phpinfo 창이 아닌 index.php 파일이 다운로드가 됩니다.

  • 이는 nginx와 php를 연동되지 않은것을 의미합니다.

  • 연동을 위해서 /etc/nginx/sites-available/default 의 default 파일의 56, 57, 60번째 주석을 해제, 60번째 줄의 php7.0을 php7.2-fpm.sock;로 수정이 필요합니다. (ubuntu 18.04 버전은 install시 php-fpm 7.2 버전)

  • 수정 후 nginx 를 재부팅한 후 인스턴스 ip 주소/index.php 로 접속하게 되면 아래와 같은 창을 확인 할 수 있습니다.


$ sudo vi /etc/nginx/sites-available/default

이 부분에 index.php 파일을 가장 마지막에 입력해준다.

(그렇지 않으면 공인 ip를 입력할 때 default로 index.php가 나오게 된다.)

웹브라우저에서 접속가능하도록 심볼릭 링크(바로가기)생성하기

  • phpMyAdmin이 설치되면 그 위치는 /usr/share/phpmyadmin/ 입니다.

  • 현재 상태로는 웹 브라우저상에서 phpMyAdmin에 접근할 수 없으므로 심볼릭 링크(바로가기)를 설정

$ sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

저장하고 나온 후 nginx의 설정 파일을 수정했으므로 nginx를 재시작해준다.
$ sudo service nginx restart


이제 주소창에 본인의 AWS 퍼블릭 IPv4 주소/phpmyadmin을 입력하면
정상적으로 접속이 가능하다.


오류 발생

  • Warning in ./libraries/sql.lib.php#613 에러 발생

sudo vi /usr/share/phpmyadmin/libraries/sql.lib.php

  • 613번쨰 줄을 615번쨰 줄처럼 수정

  • 에러 메세지가 사라졌다면 성공

  • phpMyAdmin 접속 후 테이블 데이터 내용

0개의 댓글