Sun Java System Directory Server Enterprise Edition 6.3 관리 설명서

ProcedureJDBC 데이터 보기를 구성하는 방법

  1. SQL 데이터베이스에 mysql1이라는 JDBC 데이터 소스를 만듭니다.


    % dpconf create-jdbc-data-source -b sample_sql \
     -B jdbc:mysql://host2.example.com:3306/ \
     -J file:/net/host2.example/local/mysql/lib/jdbc.jar \
     -S com.mysql.jdbc.Driver mysql1
  2. SQL 데이터베이스에 대한 사용자 이름과 비밀번호 파일을 지정합니다.


    % dpconf set-jdbc-data-source-prop mysql1 db-pwd-file:sqlpwd.txt db-user:root
  3. 프록시 서버를 다시 시작합니다.


    % dpadm restart /local/dps
  4. 데이터 소스를 활성화하고 데이터 소스에 대한 쓰기 작업을 허용합니다.


    % dpconf set-jdbc-data-source-prop mysql1 is-enabled:true is-read-only:false
  5. mysql1–pool이라는 JDBC 데이터 소스 풀을 만듭니다.


    % dpconf create-jdbc-data-source-pool mysql1-pool
  6. JDBC 데이터 소스를 데이터 소스 풀에 첨부합니다.


    % dpconf attach-jdbc-data-source mysql1-pool mysql1
  7. o=sql의 기본 DN을 사용하여 데이터 소스 풀에 대한 myjdbc1–view라는 JDBC 데이터 보기를 만듭니다.


    % dpconf create-jdbc-data-view mysql1-view mysql1-pool o=sql
  8. MySQL 데이터베이스의 각 테이블에 대한 JDBC 테이블을 만듭니다.


    % dpconf create-jdbc-table employee1 EMPLOYEE
    % dpconf create-jdbc-table country1 COUNTRY
    % dpconf create-jdbc-table phone1 PHONE

    SQL 데이터베이스의 테이블 이름은 대소문자를 구분합니다. SQL 데이터베이스에 사용된 것과 동일한 대소문자를 사용해야 합니다.

  9. 각 테이블의 열마다 JDBC 속성을 만듭니다.

    JDBC 속성을 만들면 MySQL 열이 LDAP 속성에 매핑됩니다.


    % dpconf add-jdbc-attr employee1 uid ID
    % dpconf add-jdbc-attr employee1 sn SURNAME
    % dpconf add-jdbc-attr employee1 userPassword PASSWORD
    % dpconf add-jdbc-attr employee1 roomNumber ROOM
    % dpconf add-jdbc-attr phone1 telephoneNumber NUMBER
    % dpconf add-jdbc-attr country1 countryName NAME

    phone1 user_idcountry1 id 열에는 LDAP 속성 uid가 이미 만들어진 EMPLOYEE.ID에 있는 값만 들어 있기 때문에 JDBC 속성을 만들 필요가 없습니다.

  10. LDAP person 객체 클래스에 대한 JDBC 객체 클래스를 만듭니다.

    이 단계에서 employee1 테이블은 기본 테이블로 식별되고 country1phone1 테이블은 보조 테이블로 식별됩니다. 또한 JDBC 객체 클래스를 만들려면 DN이 필요합니다. 이 예에서 DN은 데이터 보기의 기본 DN 및 uid 속성에서 구성됩니다.


    % dpconf create-jdbc-object-class mysql1-view person employee1 country1 phone1 uid
  11. 기본 테이블과 보조 테이블 간의 결합 규칙을 정의합니다.

    결합 규칙은 보조 테이블에 정의되며 해당 테이블의 데이터가 기본 테이블의 테이터에 연결되는 방법을 결정합니다.


    % dpconf set-jdbc-table-prop country1 filter-join-rule:ID=\${EMPLOYEE.COUNTRY_ID}
    % dpconf set-jdbc-table-prop phone1 filter-join-rule:USER_ID=\${EMPLOYEE.ID}
  12. JDBC 객체 클래스에 대한 수퍼 클래스를 지정합니다.

    수퍼 클래스는 JDBC 객체 클래스가 속성을 상속하는 LDAP 객체 클래스를 나타냅니다.


    % dpconf set-jdbc-object-class-prop mysql1-view person super-class:top