서버 운영/APM 서버 구축

APT 패키지 관리자를 통해 설치한 phpMyAdmin 업그레이드 방법(업그레이드 버전 4.9.0.1)

씨실과 날실 2019. 6. 18. 09:00

지금까지 저는 우분투의 apt 저장소에서 설치한 phpMyAdmin 4.6.6deb5를 쭉 써왔습니다. 언젠가 apt 저장소에 올라가 있는 phpMyAdmin 패키지가 업그레이드되어 apt update && apt upgrade 명령만 꾸준히 실행해주면 언젠가 자동으로 업그레이드될 것이라 생각했기 때문입니다. 그러나 1년이 넘는 시간동안 업그레이드가 이루어지지 않고 있어 이번 기회에 업그레이드하기로 했습니다.

현재 사용 중인 phpMyAdmin 버전 확인

일단 현재 phpMyAdmin 버전을 확인해보도록 합시다. 설치되어 있는 phpMyAdmi(http://localhost/phpmyadmin/로그인하여 메인 화면 우 하단 상자를 확인합니다.

이렇게 버전 정보를 확인할 수 있습니다. 현재 우분투 apt 저장소에는 4.6.6deb5가 올라가 있습니다. 그리고 phpMyAdmin 공식 사이트(https://www.phpmyadmin.net/)에는 2019년 6월 4일에 최신 버전으로 4.9.0.1이 올라와 있습니다. 최신버전으로 업그레이드해봅시다.

기존 phpMyAdmin 디렉토리 백업

백업에 앞서 phpMyAdmin은 디렉토리가 어떻게 구성되어 있는지 확인할 필요가 있습니다.

APT 패키지 관리자를 통한 phpMyAdmin 설치는 아래와 같이 여러 디렉토리를 만듭니다.

    /etc/phpmyadmin – 환경 설정 파일(Configuration files)
    /var/lib/phpmyadmin – 라이브러리 및 임시 디렉토리(Library and tmp directries)
    /usr/share/phpmyadmin – 주요 phpMyAdmin 설치 디렉토리(Main phpMyAdmin installation)

위 디렉토리들 중 우리가 백업할 디렉토리는 /usr/share/phpmyadmin입니다.

study@study-VirtualBox:~$ study@study-VirtualBox:~$ sudo mv /usr/share/phpmyadmin/ /usr/share/phpmyadmin.bak
[sudo] study의 암호: 
study@study-VirtualBox:~$

phpMyAdmin 최신 버전 다운로드

phpMyAdmin의 최신 버전은 phpMyAdmin 공식 사이트의 다운로드 페이지(https://www.phpmyadmin.net/downloads/)에서 받습니다.

위 화면에서 우리는 phpMyAdmin-4.9.0.1-all-languages.tar.gz 파일을 다운 받을 것입니다. 해당 링크에 마우스를 올리고 오른쪽 버튼을 눌러 링크 주소를 복사해줍니다.

study@study-VirtualBox:~$ cd ~/다운로드
study@study-VirtualBox:~/다운로드$ wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gz
--2019-06-09 10:17:17--  https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gz
Resolving files.phpmyadmin.net (files.phpmyadmin.net)... 113.29.230.53
접속 files.phpmyadmin.net (files.phpmyadmin.net)|113.29.230.53|:443... 접속됨.
HTTP request sent, awaiting response... 200 OK
Length: 10054763 (9.6M) [application/octet-stream]
Saving to: ‘phpMyAdmin-4.9.0.1-all-languages.tar.gz’

phpMyAdmin-4.9.0.1- 100%[===================>]   9.59M  5.25MB/s    in 1.8s    

2019-06-09 10:17:20 (5.25 MB/s) - ‘phpMyAdmin-4.9.0.1-all-languages.tar.gz’ saved [10054763/10054763]

study@study-VirtualBox:~/다운로드$ 
 

기존 구 버전의 주요 설치 디렉토리 경로로 압축 풀기

study@study-VirtualBox:~/다운로드$ sudo tar -xzf phpMyAdmin-4.9.0.1-all-languages.tar.gz -C /usr/share
[sudo] study의 암호: 
study@study-VirtualBox:~/다운로드$

디렉토리명 변경

기존 디렉토리명과 똑같이 변경해줍니다. 이때 리눅스는 대소문자를 구분하므로 유의해줍니다. apt 저장소를 통해 phpMyAdmin을 설치한 경우 설치 디렉토리명이 phpmyadmin이므로 똑같이 변경해줍니다.

study@study-VirtualBox:~/다운로드$ cd /usr/share
study@study-VirtualBox:/usr/share$ sudo mv phpMyAdmin-4.9.0.1-all-languages phpmyadmin
study@study-VirtualBox:/usr/share$ 

phpMyAdmin 접속(오류 확인)

phpMyAdmin에 로그인하여 접속하면 위 그림처럼 하단에 오류가 표시됩니다. 그 내용은 다음과 같습니다.

이제 설정 파일은 암호화 문자열(blowfish_secret)을 필요로 합니다.

The $cfg['TempDir'] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.

이 오류를 해결해봅시다.

vendor_config.php 수정

phpMyAdmin가 Apt 패키지 관리자를 통해 설치된 경우, vendor_config.php 안의 TEMP_DIR 및 CONFIG_DIR 위치를 지정해야합니다.

study@study-VirtualBox:/usr/share$ gedit admin:///usr/share/phpmyadmin/libraries/vendor_config.php 

위 명령을 실행하여 vendor_config.php 파일을 gedit로 열어줍니다. 이제 각 오류를 해결해 봅시다.

첫 번째 오류부터 해결해봅시다.

이제 설정 파일은 암호화 문자열(blowfish_secret)을 필요로 합니다.


define('CONFIG_DIR' 문구를 찾습니다.


/**
 * Directory where configuration files are stored.
 * It is not used directly in code, just a convenient
 * define used further in this file.
 */
define('CONFIG_DIR', '');


위와 같은 구문을 찾을 수 있습니다.

define('CONFIG_DIR', '/etc/phpmyadmin/'); 로 수정해줍니다.

이제 두 번째 오류도 마저 해결해봅시다.

The $cfg['TempDir'] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.


define('TEMP_DIR' 문구를 찾습니다.


/**
 * Directory where cache files are stored.
 */
define('TEMP_DIR', './tmp/');


위와 같은 구문을 찾을 수 있습니다.

define('TEMP_DIR', '/var/lib/phpmyadmin/tmp/'); 로 수정해줍니다.

phpMyAdmin 접속(오류 해결 여부 확인)

위 두 부분을 수정하고 저장 후 다시 phpMyAdmin에 로그인해봅시다.

버전 정보가 4.9.0.1 최신 버전으로 표시되고 하단의 오류 문구도 사라진 것을 확인할 수 있습니다. 업그레이드가 무사히 이루어졌습니다.