"CentOS phpMyAdmin 설치 (yum)"의 두 판 사이의 차이

(새 문서: ;리눅스 phpMyAdmin 설치 ==사전 작업== *yum EPEL 저장소 추가 *리눅스 아파치 설치 *리눅스 MySQL 설치 ==phpMyAdmin 설치== <source lang='console...)
 
잔글 (봇: 자동으로 텍스트 교체 (-</source> +</syntaxhighlight>, -<source +<syntaxhighlight ))
 
(사용자 3명의 중간 판 15개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
;리눅스 phpMyAdmin 설치
;리눅스 phpMyAdmin 설치
* 최신버전을 설치하려면 '''[[리눅스 phpMyAdmin 설치 (수동)]]'''으로...


==사전 작업==
==사전 작업==
*[[yum EPEL 저장소 추가]]
* [[리눅스 APM 설치]]
*[[리눅스 아파치 설치]]
:(단, 원격 MySQL을 사용한다면 Apache와 PHP만 설치하면 됨)
*[[리눅스 MySQL 설치]]


==phpMyAdmin 설치==
==phpMyAdmin 설치==
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# yum install phpMyAdmin
[root@zetawiki ~]# yum install phpMyAdmin
... (생략)
... (생략)
38번째 줄: 39번째 줄:
Total download size: 9.2 M
Total download size: 9.2 M
Is this ok [y/N]: y
Is this ok [y/N]: y
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
... (생략)
... (생략)
Installed:
Installed:
58번째 줄: 59번째 줄:


Complete!
Complete!
</source>
</syntaxhighlight>


==아파치 reload 및 로컬접속확인==
==아파치 reload 및 로컬접속확인==
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# service httpd reload
[root@zetawiki ~]# service httpd reload
Reloading httpd:
Reloading httpd:
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# curl -s -I http://localhost/phpMyAdmin/ | head -3
[root@zetawiki ~]# curl -s -I http://localhost/phpMyAdmin/ | head -3
HTTP/1.1 200 OK
HTTP/1.1 200 OK
Date: Sat, 14 May 2016 19:26:52 GMT
Date: Sat, 14 May 2016 19:26:52 GMT
Server: Apache
Server: Apache
</source>
</syntaxhighlight>


==(Optional) 외부접속 허용 및 확인==
==(Optional) 외부접속 허용 및 확인==
* phpMyAdmin은 보안상 이유로 로컬호스트만 접속 가능하게 제한되어 있다.
* phpMyAdmin은 보안상 이유로 로컬호스트(127.0.0.1)만 접속 가능하게 제한되어 있다.
<source lang='console'>
* 외부에서 접속하려면 설정을 변경해야 한다.
<syntaxhighlight lang='console'>
[root@zetawiki ~]# cd /etc/httpd/conf.d/
[root@zetawiki ~]# cd /etc/httpd/conf.d/
[root@zetawiki conf.d]# grep 127.0.0.1 phpMyAdmin.conf
[root@zetawiki conf.d]# grep 127.0.0.1 phpMyAdmin.conf
81번째 줄: 83번째 줄:
       Require ip 127.0.0.1
       Require ip 127.0.0.1
     Allow from 127.0.0.1
     Allow from 127.0.0.1
</source>
</syntaxhighlight>
* 외부에서 접속하고자 하는 곳(아마도 PC)의 IP로 바꿔주자.
* 기존 설정을 보존해두고, 접속하고자 하는 곳(아마도 PC)의 IP(예: 135.79.246.80)<ref>IP 대신 'All'을 넣어도 되는데, 누구나 phpMyAdmin 페이지에 접근가능하므로 취약</ref>로 바꿔주자.
* 그전에 기존 설정을 보존해두자.
<syntaxhighlight lang='console'>
<source lang='console'>
[root@zetawiki conf.d]# cp -a phpMyAdmin.conf phpMyAdmin.conf.origin
[root@zetawiki conf.d]# cp -a phpMyAdmin.conf phpMyAdmin.conf.origin
[root@zetawiki conf.d]# sed -i 's/127.0.0.1/135.79.246.80/g' phpMyAdmin.conf
[root@zetawiki conf.d]# sed -i 's/127.0.0.1/135.79.246.80/g' phpMyAdmin.conf
94번째 줄: 95번째 줄:
[root@zetawiki conf.d]# service httpd reload
[root@zetawiki conf.d]# service httpd reload
Reloading httpd:  
Reloading httpd:  
</source>
</syntaxhighlight>
*웹브라우저에서 http://서버주소/phpMyAdmin 으로 접속 확인
*웹브라우저에서 http://서버주소/phpMyAdmin 으로 접속 확인


==설정파일 생성 및 확인==
==설정파일 생성 및 확인==
*http://서버주소/phpMyAdmin/setup 접속
*http://서버주소/phpMyAdmin/setup 접속
*만약 "phpMyAdmin - Error Configuration already exists, setup is disabled!" 에러가 뜬다면 기존에 설정 때문에 문제가 생기는 것이다. 그럴 경우 /etc/phpMyAdmin/에 위치한 config.inc.php 파일을 지우거나 파일명을 변경해준다
*[새 서버<ref>New server</ref>] 클릭
*[새 서버<ref>New server</ref>] 클릭
*"새 서버 추가<ref>Add a new server</ref>" --- 서버 호스트명, 서버 포트<ref>Server hostname, Server port</ref> 등 입력<ref>localhost 3306 포트라면 입력하지 않아도 됨</ref> --- [저장<ref>Save</ref>]
*"새 서버 추가<ref>Add a new server</ref>" --- 서버 호스트명, 서버 포트<ref>Server hostname, Server port</ref> 등 입력<ref>localhost 3306 포트라면 입력하지 않아도 됨</ref> --- [저장<ref>Save</ref>]
*"설정 파일<ref>Configuration file</ref>" --- 기본 언어<ref>Default language</ref>: 한국어 - Korean --- [저장<ref>Save</ref>]
*"설정 파일<ref>Configuration file</ref>" --- 기본 언어<ref>Default language</ref>: 한국어 - Korean --- [저장<ref>Save</ref>]
여기까지 하면 /var/lib/phpMyAdmin/config/config.inc.php 파일이 생성된다.
여기까지 하면 /var/lib/phpMyAdmin/config/config.inc.php 파일이 생성된다.
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# ll /var/lib/phpMyAdmin/config/config.inc.php
[root@zetawiki ~]# ll /var/lib/phpMyAdmin/config/config.inc.php
-rw-r--r-- 1 apache apache 757 Aug 31 00:01 /var/lib/phpMyAdmin/config/config.inc.php
-rw-r--r-- 1 apache apache 757 Aug 31 00:01 /var/lib/phpMyAdmin/config/config.inc.php
</source>
</syntaxhighlight>
그런데 실제로 사용되는 파일은 /etc/phpMyAdmin/config.inc.php 이다<ref>기존 설정을 날려먹게 될까봐 별도의 위치에 생성하는 듯...</ref>
그런데 실제로 사용되는 파일은 /etc/phpMyAdmin/config.inc.php 이다<ref>기존 설정을 날려먹게 될까봐 별도의 위치에 생성하는 듯...</ref>
설정파일을 바꿔치기해준다...
설정파일을 바꿔치기해준다...
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# mv /etc/phpMyAdmin/config.inc.php /etc/phpMyAdmin/config.inc.php.old
[root@zetawiki ~]# mv /etc/phpMyAdmin/config.inc.php /etc/phpMyAdmin/config.inc.php.old
[root@zetawiki ~]# cp /var/lib/phpMyAdmin/config/config.inc.php /etc/phpMyAdmin/config.inc.php
[root@zetawiki ~]# cp /var/lib/phpMyAdmin/config/config.inc.php /etc/phpMyAdmin/config.inc.php
</source>
</syntaxhighlight>


==최종 확인==
==최종 확인==
120번째 줄: 122번째 줄:
:만약 <code>#2002 MySQL 서버에 로그인할 수 없습니다</code>가 나오면 config.inc.php가 제대로 연동되지 않은 것
:만약 <code>#2002 MySQL 서버에 로그인할 수 없습니다</code>가 나오면 config.inc.php가 제대로 연동되지 않은 것
:만약 <code>#1045 MySQL 서버에 로그인할 수 없습니다</code>가 나오면 사용자명 또는 암호가 틀린 것
:만약 <code>#1045 MySQL 서버에 로그인할 수 없습니다</code>가 나오면 사용자명 또는 암호가 틀린 것
::→ '''[[MySQL ERROR 1045 접근 거부]]''' 문서 참고


==같이 보기==
==같이 보기==

2020년 11월 2일 (월) 02:58 기준 최신판

1 개요[ | ]

리눅스 phpMyAdmin 설치

2 사전 작업[ | ]

(단, 원격 MySQL을 사용한다면 Apache와 PHP만 설치하면 됨)

3 phpMyAdmin 설치[ | ]

Console
Copy
[root@zetawiki ~]# yum install phpMyAdmin
... (생략)
===========================================================================================
 Package                  Arch            Version                   Repository        Size
===========================================================================================
Installing:
 libjpeg-turbo            x86_64          1.2.1-3.el6_5             updates          174 k
     replacing  libjpeg.x86_64 6b-46.el6
 phpMyAdmin               noarch          3.5.8.2-1.el6             epel             4.3 M
Installing for dependencies:
 libXpm                   x86_64          3.5.10-2.el6              base              51 k
 libmcrypt                x86_64          2.5.8-9.el6               epel              96 k
 php                      x86_64          5.3.3-27.el6_5            updates          1.1 M
 php-gd                   x86_64          5.3.3-27.el6_5            updates          107 k
 php-mbstring             x86_64          5.3.3-27.el6_5            updates          455 k
 php-mcrypt               x86_64          5.3.3-3.el6               epel              19 k
 php-mysql                x86_64          5.3.3-27.el6_5            updates           81 k
 php-pdo                  x86_64          5.3.3-27.el6_5            updates           75 k
 php-php-gettext          noarch          1.0.11-3.el6              epel              21 k
Updating for dependencies:
 php-cli                  x86_64          5.3.3-27.el6_5            updates          2.2 M
 php-common               x86_64          5.3.3-27.el6_5            updates          525 k

Transaction Summary
===========================================================================================
Install      11 Package(s)
Upgrade       2 Package(s)

Total download size: 9.2 M
Is this ok [y/N]: y
Console
Copy
... (생략)
Installed:
  libjpeg-turbo.x86_64 0:1.2.1-3.el6_5          phpMyAdmin.noarch 0:3.5.8.2-1.el6         

Dependency Installed:
  libXpm.x86_64 0:3.5.10-2.el6                    libmcrypt.x86_64 0:2.5.8-9.el6           
  php.x86_64 0:5.3.3-27.el6_5                     php-gd.x86_64 0:5.3.3-27.el6_5           
  php-mbstring.x86_64 0:5.3.3-27.el6_5            php-mcrypt.x86_64 0:5.3.3-3.el6          
  php-mysql.x86_64 0:5.3.3-27.el6_5               php-pdo.x86_64 0:5.3.3-27.el6_5          
  php-php-gettext.noarch 0:1.0.11-3.el6          

Dependency Updated:
  php-cli.x86_64 0:5.3.3-27.el6_5            php-common.x86_64 0:5.3.3-27.el6_5           

Replaced:
  libjpeg.x86_64 0:6b-46.el6                                                               

Complete!

4 아파치 reload 및 로컬접속확인[ | ]

Console
Copy
[root@zetawiki ~]# service httpd reload
Reloading httpd:
Console
Copy
[root@zetawiki ~]# curl -s -I http://localhost/phpMyAdmin/ | head -3
HTTP/1.1 200 OK
Date: Sat, 14 May 2016 19:26:52 GMT
Server: Apache

5 (Optional) 외부접속 허용 및 확인[ | ]

  • phpMyAdmin은 보안상 이유로 로컬호스트(127.0.0.1)만 접속 가능하게 제한되어 있다.
  • 외부에서 접속하려면 설정을 변경해야 한다.
Console
Copy
[root@zetawiki ~]# cd /etc/httpd/conf.d/
[root@zetawiki conf.d]# grep 127.0.0.1 phpMyAdmin.conf
       Require ip 127.0.0.1
     Allow from 127.0.0.1
       Require ip 127.0.0.1
     Allow from 127.0.0.1
  • 기존 설정을 보존해두고, 접속하고자 하는 곳(아마도 PC)의 IP(예: 135.79.246.80)[1]로 바꿔주자.
Console
Copy
[root@zetawiki conf.d]# cp -a phpMyAdmin.conf phpMyAdmin.conf.origin
[root@zetawiki conf.d]# sed -i 's/127.0.0.1/135.79.246.80/g' phpMyAdmin.conf
[root@zetawiki conf.d]# grep 135.79.246.80 phpMyAdmin.conf
       Require ip 135.79.246.80
     Allow from 135.79.246.80
       Require ip 135.79.246.80
     Allow from 135.79.246.80
[root@zetawiki conf.d]# service httpd reload
Reloading httpd:

6 설정파일 생성 및 확인[ | ]

  • http://서버주소/phpMyAdmin/setup 접속
  • 만약 "phpMyAdmin - Error Configuration already exists, setup is disabled!" 에러가 뜬다면 기존에 설정 때문에 문제가 생기는 것이다. 그럴 경우 /etc/phpMyAdmin/에 위치한 config.inc.php 파일을 지우거나 파일명을 변경해준다
  • [새 서버[2]] 클릭
  • "새 서버 추가[3]" --- 서버 호스트명, 서버 포트[4] 등 입력[5] --- [저장[6]]
  • "설정 파일[7]" --- 기본 언어[8]: 한국어 - Korean --- [저장[9]]

여기까지 하면 /var/lib/phpMyAdmin/config/config.inc.php 파일이 생성된다.

Console
Copy
[root@zetawiki ~]# ll /var/lib/phpMyAdmin/config/config.inc.php
-rw-r--r-- 1 apache apache 757 Aug 31 00:01 /var/lib/phpMyAdmin/config/config.inc.php

그런데 실제로 사용되는 파일은 /etc/phpMyAdmin/config.inc.php 이다[10] 설정파일을 바꿔치기해준다...

Console
Copy
[root@zetawiki ~]# mv /etc/phpMyAdmin/config.inc.php /etc/phpMyAdmin/config.inc.php.old
[root@zetawiki ~]# cp /var/lib/phpMyAdmin/config/config.inc.php /etc/phpMyAdmin/config.inc.php

7 최종 확인[ | ]

로그인이 잘되면 OK
만약 #2002 MySQL 서버에 로그인할 수 없습니다가 나오면 config.inc.php가 제대로 연동되지 않은 것
만약 #1045 MySQL 서버에 로그인할 수 없습니다가 나오면 사용자명 또는 암호가 틀린 것
MySQL ERROR 1045 접근 거부 문서 참고

8 같이 보기[ | ]

9 주석[ | ]

  1. IP 대신 'All'을 넣어도 되는데, 누구나 phpMyAdmin 페이지에 접근가능하므로 취약
  2. New server
  3. Add a new server
  4. Server hostname, Server port
  5. localhost 3306 포트라면 입력하지 않아도 됨
  6. Save
  7. Configuration file
  8. Default language
  9. Save
  10. 기존 설정을 날려먹게 될까봐 별도의 위치에 생성하는 듯...
편집자 J Jmnote 183.100.213.123 Ijeff Jmnote bot
문서 댓글 (12)
Ijeff 2018-11-02
감사합니다. "http://서버주소/phpMyAdmin/setup 접속" 부분 일부 추가합니다
Jmnote 2018-11-01
댓글 잘리는 문제는 글자수를 표시하고 제한을 해야겠네요.
Jmnote 2018-11-01
'사전작업' 수정했습니다. PHP 소소코드가 그대로 출력되는 것은 1) PHP 설치가 안된 경우, 2) PHP모듈이 Apache와 연동되지 않은 경우, 둘 중 하나인데 1)일 것 같습니다.
Ijeff 2018-11-01
무튼 "브라우저에서 http://서버주소/phpMyAdmin 으로 접속 확인" 이 과정에서 UI가 아닌 php소스코드가 출력됩니다 버그인 것 같습니다. 불특정하게 한줄이상 쓰면 문장이 계속 짤립니다
Ijeff 2018-11-01
댓글 수정기능도 필요할 듯합니다
Jmnote 2017-04-14
기존 아파치 설정을 알 수 없어서 자세한 것을 말씀드리기는 어렵고요. 아파치 설정에 80포트 외의 포트번호를 지정하여 VirtualHost를 추가하고 phpmyadmin 디렉토리를 기입하여 사용하면 될 것 같네요.
Tndyd5390 2017-04-14
아파치 웹서버와 tomcat를 연동 한 상태에서 위와 같이하면 phpmyadmin을 사용할수 있나요????
Shinch25 2016-05-24
감사합니다. 모두 해결되어 phpadmin 작동이 정상으로 되었습니다. 실무 안해본지 20년이 되어가다보니 명령어도 많이 잊어 버렸고...ㅠㅠ 암튼 감사드리며 워드프레스 공부하며 모르는 것 염치 없지만 또 물어 보겠습니다.
Jmnote 2016-05-24
config.inc.php 파일은 별 문제가 없는 것 같습니다. 마지막 문단에 추가했듯이 http://zetawiki.com/wiki/MySQL_ERROR_1045_접근_거부 문서를 참고하시면 될 것 같네요.
Shinch25 2016-05-24
감사합니다. 브라우저문제는 해결이 되었는데 "설정파일 생성 및 확인" 과 같이 http://서버주소/phpMyAdmin /setup 을 실행하여 변경없이 화면 그대로 저장을 하였습니다. 브라우저에서 phpMyAdmin/index.php 를 샐행하여 사용자명은 root로 하고 패스워드는 root패스워드로 넣고 "실행"을 클릭하니 #1045 MySQL 서버에 로그인할 수 없습니다 라는 메세지가 나오네요...ㅠㅠ config.inc.php 파일은 아래와 같습니다. [root@websvr1 phpMyAdmin]# cat config.inc.php
Jmnote 2016-05-15
로컬에서만 접속되는 보안설정이 있네요. '(Optional) 외부접속 허용 및 확인' 문단을 추가했습니다. 참고하세요.
Shinch25 2016-05-14
위에 서술되어 있는대로 설치하였는데 http://서버주소/phpMyAdmin 이 브라우저에서 페이지를 표시할 수 없다는 메세지가 나오네요...ㅠㅠ 새로운 서버에 centos 6.7을 설치하였고 MySql도 설치 하였습니다. 또한 워드프레스도 지침대로 설치하였는데 위와 같은 결과가 나오네요... 좋은 의견 부탁드립니다.
  • CentOS MySQL 설치
    RHEL5.x 버전에서 MySQL-5.5.45 버전 설치시, /usr/bin/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data 와 같이 설정해 주지 않으면 정상 동작하지 않는 경우가 있었습니다. 확인 바랍니다.
  • CentOS phpMyAdmin 설치 (yum)
    위에 서술되어 있는대로 설치하였는데 http://서버주소/phpMyAdmin 이 브라우저에서 페이지를 표시할 수 없다는 메세지가 나오네요...ㅠㅠ 새로운 서버에 centos 6.7을 설치하였고 MySql도 설치 하였습니다. 또한 워드프레스도 지침대로 설치하였는데 위와 같은 결과가 Shinch25
  • CentOS phpMyAdmin 설치 (yum)
    로컬에서만 접속되는 보안설정이 있네요. '(Optional) 외부접속 허용 및 확인' 문단을 추가했습니다. 참고하세요.J Jmnote
  • CentOS phpMyAdmin 설치 (yum)
    감사합니다. 브라우저문제는 해결이 되었는데 "설정파일 생성 및 확인" 과 같이 http://서버주소/phpMyAdmin /setup 을 실행하여 변경없이 화면 그대로 저장을 하였습니다. 브라우저에서 phpMyAdmin/index.php 를 샐행하여 사용자명은 root로 하고 패스워드는 Shinch25
  • CentOS phpMyAdmin 설치 (yum)
    config.inc.php 파일은 별 문제가 없는 것 같습니다. 마지막 문단에 추가했듯이 http://zetawiki.com/wiki/MySQL_ERROR_1045_접근_거부 문서를 참고하시면 될 것 같네요.J Jmnote
  • CentOS phpMyAdmin 설치 (yum)
    감사합니다. 모두 해결되어 phpadmin 작동이 정상으로 되었습니다. 실무 안해본지 20년이 되어가다보니 명령어도 많이 잊어 버렸고...ㅠㅠ 암튼 감사드리며 워드프레스 공부하며 모르는 것 염치 없지만 또 물어 보겠습니다. Shinch25
  • CentOS phpMyAdmin 설치 (yum)
    아파치 웹서버와 tomcat를 연동 한 상태에서 위와 같이하면 phpmyadmin을 사용할수 있나요???? Tndyd5390
  • CentOS phpMyAdmin 설치 (yum)
    기존 아파치 설정을 알 수 없어서 자세한 것을 말씀드리기는 어렵고요. 아파치 설정에 80포트 외의 포트번호를 지정하여 VirtualHost를 추가하고 phpmyadmin 디렉토리를 기입하여 사용하면 될 것 같네요.J Jmnote
  • CentOS phpMyAdmin 설치 (yum)
    댓글 수정기능도 필요할 듯합니다 Ijeff
  • CentOS phpMyAdmin 설치 (yum)
    무튼 "브라우저에서 http://서버주소/phpMyAdmin 으로 접속 확인" 이 과정에서 UI가 아닌 php소스코드가 출력됩니다 버그인 것 같습니다. 불특정하게 한줄이상 쓰면 문장이 계속 짤립니다 Ijeff
  • CentOS phpMyAdmin 설치 (yum)
    '사전작업' 수정했습니다. PHP 소소코드가 그대로 출력되는 것은 1) PHP 설치가 안된 경우, 2) PHP모듈이 Apache와 연동되지 않은 경우, 둘 중 하나인데 1)일 것 같습니다.J Jmnote
  • CentOS phpMyAdmin 설치 (yum)
    댓글 잘리는 문제는 글자수를 표시하고 제한을 해야겠네요.J Jmnote
  • CentOS phpMyAdmin 설치 (yum)
    감사합니다. "http://서버주소/phpMyAdmin/setup 접속" 부분 일부 추가합니다 Ijeff