SW/리눅스

Ubuntu 18.04 : phpMyAdmin with Nginx 설치 방법, 예제, 명령어

얇은생각 2021. 3. 9. 07:30
반응형

phpMyAdmin은 웹 기반 인터페이스를 통해 MySQL 및 MariaDB 서버를 관리하기 위한 오픈 소스 PHP 기반 도구입니다.

phpMyAdmin을 사용하면 MySQL 데이터베이스와 상호 작용하고, 사용자 계정 및 권한을 관리하고, SQL 문을 실행하고, 다양한 데이터 형식으로 데이터를 가져오고 내보낼 수 있습니다. 

이 튜토리얼에서는 Ubuntu 18.04에서 Nginx와 함께 phpMyAdmin을 설치하는 방법에 대해 설명합니다.

 

 

 

전제조건

이 자습서를 계속하기 전에 다음 필수 구성 요소를 충족했는지 확인하십시오.

- Ubuntu 서버에 설치된 LEMP(Linux, Nginx, MySQL 및 PHP 7)

- sudo 권한을 가진 사용자로 로그인했

 

필요하지 않지만 HTTPS를 통해 phpMyAdmin 인스턴스에 액세스하는 것이 좋습니다. 사이트에서 SSL을 사용하도록 설정하지 않은 경우 Ubuntu 18.04에서 Nginx를 보호하는 방법에 대한 문서를 확인하십시오.

 

 

 

Ubuntu에 phpMyAdmin을 설치

phpMyAdmin 설치는 매우 간단한 작업입니다. 먼저 패키지 목록을 업데이트하십시오.

sudo apt update

 

 

다음으로 다음 명령을 실행하여 기본 Ubuntu 리포지토리에서 phpMyAdmin 패키지를 설치합니다.

sudo apt install phpmyadmin

 

 

phpMyAdmin을 설치하기 전에 시스템에 Nginx 및 PHP FPM이 설치되어 있는지 확인하십시오.

설치 관리자는 사용자에게 phpMyAdmin을 실행하도록 자동으로 구성되어야 하는 웹 서버를 선택하라는 메시지를 표시합니다. Nginx를 선택할 수 있는 옵션이 없습니다. Tab 키를 눌러 OK를 선택한 다음 Enter를 선택합니다. 다음 섹션에서 Nginx를 구성합니다.

Ubuntu 18.04 : Nginx와 함께 phpMyAdmin 설치 방법, 예제, 명령어 1

 

 

그런 다음 설치 관리자가 dbconfig-common 도구를 사용하여 데이터베이스를 설정할지 여부를 묻습니다. Yes(예)를 선택하고 Enter(입력)을 누릅니다.

Ubuntu 18.04 : Nginx와 함께 phpMyAdmin 설치 방법, 예제, 명령어 2

 

 

데이터베이스에 등록할 phpMyAdmin의 비밀번호를 입력하고 확인을 선택한 후 Enter 키를 누릅니다.

Ubuntu 18.04 : Nginx와 함께 phpMyAdmin 설치 방법, 예제, 명령어 3

 

 

암호를 확인하라는 메시지가 표시되고 동일한 암호를 입력한 다음 확인을 선택하고 Enter 키를 누릅니다.

Ubuntu 18.04 : Nginx와 함께 phpMyAdmin 설치 방법, 예제, 명령어 4

 

 

이 때 phpMyAdmin이 Ubuntu 서버에 설치되었습니다.

 

 

 

관리 MySQL 사용자를 생성

MySQL 5.7 이상을 실행하는 Ubuntu 시스템에서는 루트 사용자가 기본적으로 auth_socket 인증 방법을 사용하도록 설정되어 있습니다.

auth_socket 플러그인은 로컬 호스트에서 유닉스 소켓 파일을 통해 연결하는 사용자를 인증합니다. 즉, 암호를 입력하여 루트로 인증할 수 없습니다. 

MySQL 사용자 루트의 인증 방법을 변경하는 대신 새 관리 MySQL 사용자를 생성하겠습니다. 이 사용자는 루트 사용자와 동일한 권한을 가지며 mysql_native_password 인증 방법을 사용하도록 설정됩니다. 

이 사용자를 사용하여 phpMyAdmin 대시보드에 로그인하고 MySQL 서버에서 관리 작업을 미리 수행합니다.

먼저 MySQL 서버에 루트 사용자로 로그인합니다.

sudo mysql

 

 

MySQL 셸 내에서 다음 명령을 실행하여 새 관리 사용자를 생성하고 적절한 사용 권한을 부여합니다.

CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'change-with-your-secure-password';
GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

 

 

이 예에서는 관리 사용자 이름을 padmin으로 지정했습니다. 원하는 이름을 사용할 수 있습니다. 강력한 암호를 설정해야 합니다. 

 

 

 

Nginx 및 phpMyAdmin을 구성

phpMyAdmin 파일을 서비스하도록 Nginx를 구성하는 방법은 여러 가지가 있습니다. 도메인의 서버 블록이 이미 PHP 요청을 처리하도록 설정된 경우 phpMyAdmin 설치 파일에서 도메인 문서 루트 디렉토리로 심볼 링크를 만들 수 있습니다.

이 가이드에서는 Nginx 서버 블록 파일에 포함할 수 있는 조각들을 만들 것입니다. 

텍스트 편집기를 열고 다음 파일을 만듭니다.

sudo nano /etc/nginx/snippets/phpmyadmin.conf

 

 

다음 내용을 붙여넣습니다.

# /etc/nginx/snippets/phpmyadmin.conf

location /phpmyadmin {
    root /usr/share/;
    index index.php index.html index.htm;
    location ~ ^/phpmyadmin/(.+\.php)$ {
        try_files $uri =404;
        root /usr/share/;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
    }

    location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
        root /usr/share/;
    }
}

 

 

fastcgi_pass 지시문에 올바른 소켓 경로 또는 주소/포트를 사용하고 있는지 확인합니다.

파일을 저장하고 편집기를 닫습니다.

이제 domain.com/phpmyadmin을 사용하여 phpMyAdmin에 액세스하려는 각 도메인의 서버 블록에 다음 줄을 추가할 수 있습니다.

include snippets/phpmyadmin.conf;

 

# /etc/nginx/conf.d/domain.com.conf

server {

    # . . . other code

    include snippets/phpmyadmin.conf;

    # . . . other code 

}

 

 

 

phpMyAdmin에 액세스

phpMyAdmin 인터페이스에 액세스하려면 즐겨찾기 브라우저를 열고 서버의 도메인 이름 또는 공용 IP 주소와 /phpmyadmin을 차례로 입력합니다.

http(s)://your_domain_or_ip_address/phpmyadmin

 

 

관리 사용자 로그인 자격 증명을 입력하고 이동을 클릭합니다.

Ubuntu 18.04 : Nginx와 함께 phpMyAdmin 설치 방법, 예제, 명령어 5

 

 

로그인하면 다음과 같은 모양의 phpMyAdmin 대시보드가 표시됩니다.

Ubuntu 18.04 : Nginx와 함께 phpMyAdmin 설치 방법, 예제, 명령어 6

 

반응형