Adobe Dreamweaver에서 MySQL을 구성하고, MySQL 데이터베이스를 연결하고, MySQL 유틸리티를 사용하는 방법을 알아봅니다.

이 문서는 PHP 5x를 실행하는 서버를 사용하는 Dreamweaver Creative Suite 사용자에 대해 적용할 수 있습니다.

Dreamweaver CC를 사용 중이라면, 데이터베이스 연결에 대해서는 다음 문서를 참조하십시오.

개요

이 문서에서는 Dreamweaver에서 PHP 서버 모델을 사용할 때 성공적인 MySQL 데이터베이스 연결과 관련된 몇 가지 중요한 요소에 대해 설명합니다. 몇 가지 기본적인 MySQL 사용자 계정 설정도 다룹니다. 로컬 또는 원격 컴퓨터에서 MySQL을 설치 및 구성했다고 가정합니다.

설정을 올바로 완료하지 못할 경우 Dreamweaver 오류. Dreamweaver에서 MySQL 연결을 테스트할 때 발생할 수 있는 일반적인 오류는 "알 수 없는 오류가 발생했습니다"입니다.

참고: 이 컨텐츠는 시작에 대한 기본 안내서 역할을 할 수 있습니다. MySQL 계정 설정을 특정 보안 요구 사항에 맞게 지정하려면 MySQL 설명서 및 기타 타사 리소스를 참고하십시오. MySQL을 다운로드하여 설치하려면MySQL 웹 사이트를 방문해 보십시오.

MySQL 구성

MySQL 데이터베이스 시스템의 기본 설치에는 mysqltest라는 두 개의 데이터베이스가 포함되어 있습니다. mysql 데이터베이스에는 권한에 대한 정보를 저장하는 6개의 테이블이 들어 있습니다. 이 섹션에서는 이러한 테이블 중 user 테이블과 db 테이블이라는 두 테이블에 대해 설명합니다.

user 테이블은 MySQL 서버에 연결할 수 있는 사용자와 사용자에게 전역 수준 권한이 있는지 여부에 대한 정보를 저장합니다. user 테이블의 권한은 MySQL 서버에 있는 모든 데이터베이스에 영향을 주므로, 일반적으로 관리자의 권한 필드는 Y(예)가 되고, 반면에 대부분의 표준 사용자의 권한 필드는 N(아니요)이 됩니다. db 테이블은 사용자가 액세스할 수 있는 MySQL 서버에 있는 데이터베이스를 지정하며, 이 테이블은 대부분의 표준 사용자 권한이 저장되는 위치입니다.

참고: 많은 타사 그래픽 인터페이스 유틸리티가 MySQL 데이터베이스를 시각적으로 관리하는 데 도움이 될 수 있지만, 이 문서에서는 기본 MySQL 명령줄 클라이언트를 사용합니다.

MySQL을 UNIX, Windows 또는 Mac OS X 컴퓨터 중 어디에 설치할지 여부에 상관없이 명령 프롬프트를 사용하여 MySQL을 관리할 수 있습니다. Windows에서는 [시작] > [프로그램] > [명령 프롬프트]를 선택하여 명령 프롬프트를 엽니다. (일부 시스템에서는 명령 프롬프트가 [시작] > [프로그램] 메뉴의 [보조프로그램] 아래에 있을 수 있습니다.)

명령 프롬프트에서 다음 명령을 입력하여 mysql\bin 디렉토리로 변경하십시오.

> cd\> cd mysql\bin

MySQL 설치 동안, MySQL에서는 암호가 없고 데이터베이스에 로그인하는 데 사용할 수 있는 root라는 계정을 만듭니다. root는 MySQL 데이터베이스를 완전히 제어할 수 있으므로 이 계정에 암호를 할당하는 것이 좋습니다. root 계정에 암호를 할당하려면, 다음 명령을 실행하십시오. 그러면 root 암호가 new-password로 설정됩니다. new-password를 더 안전한 암호로 바꾸십시오.

> mysqladmin -u root password new-password

각 PHP 웹 응용 프로그램에 대한 MySQL 계정을 만듭니다. 원하는 만큼의 MySQL 계정을 만들고 다양한 권한 및 사용 권한을 각 계정에 할당할 수 있습니다. 웹 응용 프로그램 사용자에게는 root 계정과 동일한 수준의 권한이 필요하지 않습니다.

웹 응용 프로그램에 대해 별도의 사용자 계정을 만들려면, MySQL에 연결하고, 다음 방법 중 하나를 사용하여 고급 사용자 계정으로 로그인하십시오. 아래 예에서 고급 사용자 권한이 있는 계정은 root 계정입니다. Enter 키를 누르면 MySQL에서 암호를 입력하라는 메시지가 표시됩니다.

> mysql --user=root --password

또는

> mysql -uroot -p

MySQL에 로그인하면, 웹 응용 프로그램에 대해 dbuser(이름은 임의임)라는 사용자를 만들게 됩니다. 아래는 이 새로운 사용자를 설정하는 방법 중 네 가지 예입니다. 이 네 가지 예에서는 모두 dbuser라는 새로운 사용자가 만들어집니다. 이 사용자에게 부여된 네 가지 권한은 employees 데이터베이스(이 데이터베이스는 다음 예에서 emp로 불림)에 있는 모든 테이블에 대한 SELECT, INSERT, UPDATEDELETE입니다. 암호 myPassword는 MySQL 데이터베이스에서 암호화되어 있습니다.

  • 이 예에서, dbuserlocalhost
    에서만 데이터베이스에 액세스할 수 있습니다. GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@localhost IDENTIFIED BY "myPassword";
  • 이 예에서, dbusermySite
    에서만 데이터베이스에 액세스할 수 있습니다. GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@mySite IDENTIFIED BY "myPassword";
  • 이 예에서, dbusermySite.myDomain.com
    에서만 데이터베이스에 액세스할 수 있습니다. GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@mySite.myDomain.com IDENTIFIED BY "myPassword";
  • 이 예에서, dbuser는 모든 호스트에서 데이터베이스에 액세스할 수 있습니다.
    GRANT SELECT, INSERT, UPDATE, DELETE ON emp.* TO dbuser@"%" IDENTIFIED BY "myPassword";

GRANT 문을 실행한 후, 다음 명령을 실행하여 emp 데이터베이스에서 mysql 데이터베이스로 전환하십시오.

>use mysql

기본 mysql 데이터베이스의 db 테이블에 적용된 변경 사항을 관찰하려면 다음 SQL 문을 실행하십시오.

SELECT Host, Db, User, Select_priv, Insert_priv,    Update_priv, Delete_priv   FROM db   WHERE User='dbuser';

다음은 위에 나열된 모든 GRANT 문을 실행하는 경우 db 테이블이 표시되는 모습입니다.

Host Db User Select_

priv
Insert_

priv
Update_

priv
Delete_

priv
localhost emp dbuser Y Y Y Y
mySite emp dbuser Y Y Y Y
mySite.

myDomain.com
emp dbuser Y Y Y Y
% emp dbuser Y Y Y Y

기본 mysql 데이터베이스의 user 테이블에 적용된 변경 사항을 관찰하려면 다음 SQL 문을 실행하십시오.

SELECT Host, User, Select_priv, Insert_priv,    Update_priv, Delete_priv   FROM user   WHERE User='dbuser';

다음은 위의 모든 GRANT 문을 실행하는 경우 user 테이블이 표시되는 모습입니다.

Host User Select_

priv
Insert_

priv
Update_

priv
Delete_

priv
localhost dbuser N N N N
mySite dbuser N N N N
mySite.

myDomain.com
dbuser N N N N
% dbuser N N N N

참고: 보안을 위해서는 이 계정에서 root 또는 MySQL 관리자 계정과 유사한 관리 권한을 필요로 하지 않는 한 user 테이블의 dbuser 계정을 수정하지 마십시오. 이러한 권한을 부여하는 경우 dbuser에게 시스템 데이터베이스에 대한 액세스 권한이 생깁니다.

MySQL은 시작될 때 자동으로 userdb 테이블을 읽으며, 이 때 GRANTREVOKE 문이 실행됩니다. userdb 테이블을 수동으로 변경하는 경우, 이 명령을 사용하여 테이블을 다시 로드하여 변경 사항을 처리하십시오.

> flush privileges;

Dreamweaver에서 PHP/MySQL 사이트 정의 설정

Dreamweaver에서의 성공적인 MySQL 데이터베이스 연결은 사이트를 정의할 때의 올바른 사이트 정의 항목에 따라 결정됩니다. 다음은 mySite.myDomain.com으로 식별되는 컴퓨터에서 실행되는 Linux PHP 서버를 사용하는 샘플 PHP/MySQL 사이트 정의입니다. MySQL은 mysql1.myDomain.com으로 식별되는 다른 컴퓨터에서 실행 중이며, Dreamweaver는 로컬 워크스테이션에서 실행 중입니다. FTP는 워크스테이션과 Linux 웹 서버 간에 파일을 전송하는 데 사용됩니다.

  • 로컬 정보:
    • 사이트 이름: mySite
    • 로컬 루트 폴더: C:\mySite\
  • 원격 정보:
    • 액세스: FTP
    • FTP 호스트: mySite.myDomain.com
    • 호스트 디렉토리: /htdocs/
    • 로그인: webadmin
    • 암호: *********
  • 테스트 서버:
    • 서버 모델: PHP / MySQL
    • 액세스: FTP
    • FTP 호스트: mySite.myDomain.com
    • 호스트 디렉토리: /htdocs/
    • 로그인: webadmin
    • 암호: *********
    • URL 접두어: http://mySite.myDomain.com/

Dreamweaver에서 MySQL 데이터베이스 연결

MySQL 사용자 계정을 설정하고 사이트를 정의하면, Dreamweaver에서 MySQL 데이터베이스에 연결할 수 있습니다. 다음은 위의 설정을 사용할 때 Dreamweaver의 [MySQL 연결] 대화 상자에 대한 설정 예입니다.

연결 이름: 이름(예: connEmp)을 선택합니다.
MySQL 서버: mysql1.myDomain.com
사용자 이름: dbuser
암호: myPassword
데이터베이스: 데이터베이스 이름을 입력하거나 [선택]을 클릭하여 서버에서 실행되는 MySQL 데이터베이스 목록에서 선택합니다.

참고: MySQL 서버 필드의 경우 PHP와 MySQL이 동일한 컴퓨터에서 실행 중이라면 localhost를 입력해야 합니다.

MySQL 유틸리티

SQL을 몰라도 타사 도구가 MySQL 데이터베이스를 구성 및 관리하는 데 도움이 될 수 있습니다. 이러한 도구는 명령줄 인터페이스보다 시각적 인터페이스를 통해 데이터베이스 작업을 수행하는 것을 선호하는 경우 유용합니다. MySQL 데이터베이스나 로컬 워크스테이션을 실행 중인 컴퓨터에서 이러한 도구를 다운로드하여 설치할 수 있습니다. 많이 사용하는 도구로는 PHPMyAdminEMS MySQL Manager, urSQL 및 PremiumSoft MySQL Studio가 있습니다.

이 작업에는 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License의 라이센스가 부여되었습니다.  Twitter™ 및 Facebook 게시물은 Creative Commons 약관을 적용받지 않습니다.

법적 고지 사항   |   온라인 개인 정보 보호 정책