PHP Admin에는 MySql을 관리하는 툴이 있습니다.

너무나 유용하죠.....그런데 이보다 더 유용한 웹 Database관리 툴이 있어 소개해 드립니다.


시작하며...

Tadpole 사이트 메인화면Tadpole 사이트 메인화면


Tadpole은 그림에서 보시는 것과 같이 갖가지 브라우저를 통하여서 기존의 Database뿐아니라 MongoDb와 같은 NoSql까지도 지원하는 아주 유연한 툴입니다.


Tadpole ERD 스크린샷Tadpole ERD 스크린샷


ERD화면도 재공을 해줍니다. 이부분은 참 마음에 듭니다.


뭐 데이터베이스 툴이라면 당연이 있어야 하는 쿼리분석기 이니다.

마음에드는 것은 Color Scheme과 Result Sets인데 참 잘만들어 놓은 것 같습니다.

다음은 환경 및 링크들입니다. 데모 사이트에 가셔서 한 번 체험해 보시는 것도 추천하고 싶습니다.



사이트 주소 : https://sites.google.com/site/tadpolefordb/


마치며...


이 툴을 보면 볼 수록 맘에 드는 것이 참 괜찮은 툴인 것 같다하는 생각이 듭니다.

아마도 한국에서 만든 듯 한데.....누가만들었는지 참 잘만드신듯.....^^

아무튼 개발자의 한 사람으로서 감사하지 않을 수가 없네요....^^

Posted by gofly

댓글을 달아 주세요

  1. Favicon of http://www.facebook.com/TadpoleForDbTools BlogIcon 한금이 2012.07.22 15:31  댓글주소  수정/삭제  댓글쓰기

    소개해 주셔서 감사합니다.

1.PHP에서 SQL function을 쓰려면

나는 솔직히 PHP모듈을 설치하면 SQL function 자동으로 쓸 수 있는줄 알았다.

그런데 mysql_connect() 함수를 사용해서 DB에 쿼링을 하려고 하
Fatal error: Call to undefined function mysql_connect() in getConnect.php on line 10

라는 메세지가 뜨기 시작했다. 해서 인터넷을 뒤져 뒤져 알게된 사실이 있다.

2.PHP에 SQL Lib 추가하기

첫 번째, PHP가 설치된 곳에 php ver 5이상에는 php.ini파일이 php.ini-development ,php.ini-production 두가지로 제공을 해 주고 있습니다.

이 파일을 php.ini로 변경하여 아래 부분을 변경합니다.

이 파일 내용을 조금 변경을 해야 하는데요. 우성 아래의 extension_dir을 찾기를 사용해서 찾아서 아래와 같이 변경합니다.

[code php];extension_dir = "ext" #위 부분을 아래와 같이 변경합니다. 주의해야 할점은 ";"을 없애줘야 합니다. extension_dir = "C:/inet/PHP/ext"[/code]

그리고 다음에 주석 처리된 것을 지워 줘야 합니다. 위에도 이야기 했지만 "php.ini"파일에서의 주석구분은 ";"으로 시작하느냐에 따라 주석인가 아닌가 하는 것으로 구분합니다.

[code php];extension=php_mysql.dll
;extension=php_mysqli.dll
#위 부분에 ";"부분을 삭제 합니다.[/code]

두 번째, 중요한 것은 환변변수를 추가해 주는 것입니다. 환경변수에 PHP가 설치 되어 있는 경로를 Path변수에 추가를 해줍니다. 이렇게 하지 않으면 C:\windows\system32 폴더 아래에 "*.dll"파일을 복사해 줘야 합니다. 하지만 이 경우 업그레이드시에 별 추천할 방법이 아니라고 합니다.

세 번째, 본래 phpinfo() 함수를 써보면 Configuration File(php.ini)을 불러 오는 곳이 "C:\windows"로 설정되어 있어서 "php.ini"파일 설정 한 것을 "C:\windows"에 복사해야 합니다. 하지만, 이렇게 하지 않고, 레지스트리에 PHP설치 경로를 추가 합니다.

HKEY_LOCAL_MACHINE\SOFTWARE\PHP에 IniFilePath를 추가하고 php.ini파일이 있는 "C:\inet\PHP"를 추가합니다. 아니면, 다음의  내용을 그대로 *.reg 파일로 만들어도 됩니다.
그리고 그것을 실행하고 Apache 서버를 구동하면 됩니다.

[code]Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP]
"IniFilePath"="C:\\inet\\PHP"
[/code]

이렇게하고 나면 mysql_connect() 함수를 써도 아무런 이상없이 잘 돌아 갑니다.

문제는 SQL이 버전차이로 에러가 나더군요.....;;;; 이건 또 극복후에 기회가 되면
Posted by gofly

댓글을 달아 주세요

  1. Favicon of http://magic.wickedmiso.com BlogIcon 사악미소 2014.12.31 14:27 신고  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 올려주신 글 잘 봤는데요.
    환경변수 설정은 php설치경로 까지인가요? 아니면 ext 파일인가요?
    그리고 system32로 옮겨야 하는 파일이 php_mysql.dll 파일인가요 아니면 libmysql.dll 파일 인가요?
    레지스트리 생성된것 까지 다 확인했지만 간단한 db 연결 확인만 하려 해도 에러도 아닌 하얀 창만 떠서 난감하네요

    • Favicon of https://belong2jesus.tistory.com BlogIcon gofly 2014.12.31 20:21 신고  댓글주소  수정/삭제

      dll파일이 있는곳 까지 환경변수에 넣어주시면됩니다(ext까지죠). 이렇게하셨다면 system32를 넣어주지 않으셔도 됩니다. OS환경어느경로에서나 dll파일을 접근할수있기 때문인것입니다. 그래도 넣으시려면 모두다 넣어주셔야 할것입니다^^ dll파일은 자바로 따지면 jar파일 같은것이니까요^^ 어떤 dll이 어떻게 호출될지 모르는것이죠

      도움이 되셨길 바랍니다^^ 새해복많이 받으세요^^

오늘은 Apache와 PHP를 수동으로 설치하는 것을 해보려 합니다.
제가 이 글을 쓰는 이유는 아무리 뒤져봐도 Apache server에 PHP를 설정하는 것이 대부분 APM(Apache server + PHP + MySQL)이라는 패키지를 설치함으로서 자동으로 설정하는 법은 많지만,
수동으로 설치하는 것은 없기에 이 포스트를 씀으로서 CGI 웹프로그램을 하려는 이들이 처음 자신의 컴퓨터에 세팅을 할 때 도움이 되길 바라는 마음에서 이 글을 씁니다.

1.Apache 설치하기

일단 Apache 서버를 다운받습니다. Apache 서버는 SSL기능을 포함한것이든 아닌 것이든 개발자의 의도에 맞게 다운 받습니다. Installer버전을 다운 받는 것을 추천합니다.(추천의 의미는 별로 없지만, 아파치 서버의 경우 수동으로 설치할 필요가 없다. 그냥 간단한 설치 방법을 추천하는 바이다.)

Apache.org 사이트

Apache.org 사이트


아파치 서버에 갑니다. HTTP Serever를 클립합니다.
그럼 아래 그림과 같은 화면을 볼 수 있습니다.

아파치 Downlaod 페이지

아파치 Downlaod 페이지


원하는 Release의 Apache서버의 Download를 클릭합니다.
그럼 또 아래와 같은 그림의 페이지가 보입니다.

아파치 Downlaod 페이지

아파치 Downlaod 페이지


위의 그림을 보면 2.2.14버전의 Apache를 다운 받기 위해 클립니다.
(왜 여러번 이런 과정을 거쳐야 Download를 할 수 있는지 모르겠네요;;;;;)
클릭하면 화면내에 아래 화면으로 가게 되어있습니다.

아파치 Downlaod 페이지

아파치 Downlaod 페이지


그리고 *.msi로 자동 installer로된 버전을 다운받습니다. 빨간색으로 태두리 쳐있는 것은 SSL기능을 뺀것이고, 그 바로 아래 OpenSSL기능을 추가한 것입니다. 뭐 취향대로 받으시면 되겠습니다. 일반 적인 경우 필요없겠지만, Script 인증을 한다거나 Https프로토콜을 사용할 일이 있으면 SSL기능이 추가된 버전으로 다운 받아 설치해야 하는 것으로 알고 있습니다.

아파치를 다운 받음

아파치를 다운 받음


그리고 이제 설치 합니다. 원하는 곳에다가 설치하시면 됩니다. 저 같은 경우에 예전 개발일을 했기 때문에, Tomcat이 설치 되어 있습니다. Tomcat을 설치할 때 다른 Server을 설치할 것을 고려해서 C:\inet이라는 폴더를 만들었고, 이제는 이곳에 Tomcat, Apahce, PHP를 설치 다운 받아 설치했습니다.


2.PHP설치하기

PHP는 CGI프로그램을 하기 위하여 중요한 프로그램입니다. 저에 생각에 아주 가볍고, 많은 기능을 재공하는 프로그램이라 생각합니다.(사실 JSP의 JAVA는 좀 무거운 감이있죠^^)

저는 조금 잘못알고 있었던 것이 Apache를 설치하면 PHP기능이 당연히 된다고 생각했습니다. 아주 멍청한 생각이었죠. 어찌보면 저의 부족한 면이라고 생각합니다. 참 이바닥을 모르는 거죠. 그런데 문득 APM이 생각이 났습니다. Apache와 PHP, MySQL의 약자인 APM에서 PHP가 Apache와 별개라는 것을 깨닫게 된거죠 그래서 www.php.net을 찾아서 Download하여 설치 하였습니다.

여기서 한가지 먼저 일러 둘 것은 PHP프로그램을 받을 때에는 installer버전을 받지 마시고, Zip파일로 된 녀석을 받아 원하는 곳에다 압축을 풀어두야 한다고 말하고 싶습니다. 그 이유는 installer버전에는 php5apache2_2.dll파일이 PHP파일 내에 설치되지 않습니다.(처음에 installer버전을 다운받았는데 php5apache2_2.dll파일을 apache서버내의 http.conf에 설정해줘야 한다고 해서 찾아 보았지만 없더군요. 해서 Zip버전을 받았는데 Zip버전에는 php5apache2_2.dll파일이 있더군요)

이제 이 PHP를 받아 볼까요?

PHP Downlaod 페이지

PHP Downlaod 페이지


위의 차시트에 가면 Download라는 항목을 클릭합니다. 그러면 아래와 같은 화면이 보입니다.

PHP Downlaod 페이지

PHP Downlaod 페이지


위에서도 이야기 했지만 Zip버전으로 다운을 받습니다. 저 같은 경우에는 C:\inet밑에 Apache, Tomcat, PHP를 설치해 두었습니다. PHP는 굳이 설치할 필요가 없습니다. 그냥 다운받은 Zip을 원하는 곳에 앞축을 풀면됩니다.

PHP를 다운 받음

PHP를 다운 받음


3.Apache서버에 PHP기능 추가하기

아래는 나의 컴퓨터 세팅이다.
나는 Web Application Server(이하 WAS), Web Server, PHP를 "inet"라는 폴더를 C:\ 밑에 만들어 한곳에
모아 두었습니다. 뭐 이유는 관리하기 쉽게 하기위해서 입니다.(사실 프로젝트를 하다가 보면 경로를 적어야 할 때가 있는데 "program files" 폴더 밑에 있음 경로잡기도 모하고 program files 폴더는 중간에 공백문자도 있고해서 좀 불안 합니다. 해서 따로 관리하는 것이지요, 왜 이렇게 세팅했을 까? 의도가 궁굼하더라도 걍 취향이구나 생각해주세요^^)

%SERVER_HOME%

%SERVER_HOME%


아래는 위의 "PHP"폴더의 내용 입니다. Zip파일로 받은 PHP 프로그램은 별도로 설치 하실 필요는 없습니다. 단순히 아래 밑줄친 "php5apache2_2.dll" 파일이 있는지 확인합니다. 이 파일을 Apache 서버에 세팅을 해줘야 PHP기능이 Apache 서버에서 작동을 합니다.

%PHP_HOME%\

%PHP_HOME%\


이제는 Apache Web Server가 설치 되어있는 곳의 "conf" 폴더 아래 httpd.conf 파일을 엽니다.

%APACHE_HOME%\conf

%APACHE_HOME%\conf


다음을 "httpd.conf"파일을 추가합니다.

[code javascript]     .
    .
    .
    .
#LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule speling_module modules/mod_speling.so
#LoadModule ssl_module modules/mod_ssl.so
#LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so
#LoadModule unique_id_module modules/mod_unique_id.so
#LoadModule userdir_module modules/mod_userdir.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
    .
    .
    .
    .
    .
#아래 LoadModule php5_module 부분을 그대로 추가 합니다.
LoadModule php5_module "C:/inet/PHP/php5apache2_2.dll"[/code]

그리고 그 아래 다음을 또 추가 합니다.

[code javascript]#이코드는 URL에 *.php라는 확장명을 주면 어떻게 처리할지 설정해 주는 것입니다.
AddType application/x-httpd-php .php .html[/code]

그리고 마지막으로 "php.ini" 파일이 있는 곳을 지정해 줍니다.

[code javascript]# configure the path to php.ini
PHPIniDir "C:/inet/PHP/"[/code]

4.TEST 하기
PHP Test page

PHP Test page


위 그림은 아래 php코드가 apache 서버를 통해 파싱되어져 나온 그림입니다.

[code php]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=encoding">
<title>PHP web program</title>
</head>
    <body>
    <p>This page test PHP web program</p>
    <?php
      print("Hello I'm Choi Jin Wook This page PHP test");
    ?>
    </body>
</html>[/code]

5.마무리

MySQL을 제외한 Apache에 PHP기능을 추가하는데 많은 도움이 되었길 바라며, 궁굼한 다른 사항들은 댓글을 남기시거나 메일로 보내주시면 답변을 드리도록 하겠습니다.^^

감사합니다.
Posted by gofly

댓글을 달아 주세요