서버에서 수정팩 설치의 일부로 데이터베이스 유틸리티 (IMPORT, EXPORT, REORG, 명령행 처리기) 및 CLI 바인드 파일의 바인딩이 자동으로 발생합니다. 그러나 클라이언트에 수정팩을 설치하거나 오류가 발생하면 데이터베이스 유틸리티 및 CLI 바인드 파일을 수동으로 바인드할 수 있습니다. 바인딩 파일의 서로 다른 하위 집합은 Db2 및 호스트 또는 System i 데이터베이스 서버에 대해 서로 다른 하위 집합을 바인딩해야 합니다.
시작하기 전에
BIND 명령을 수행하는 데 필요한 권한이 있는지 확인하십시오.
이 타스크에 대한 정보
RESTRICTIVE 모드로 작성된
데이터베이스에 일부 사용자만 액세스하게 하려면 RESTRICTIVE 모드로 작성된 데이터베이스에 대해 특권을 PUBLIC으로 부여하지 마십시오.기존 페더레이션 데이터베이스가 있는 경우
db2dsproc.bnd 및
db2stats.bnd 바인딩 파일을 설치한 후
Db2® 수정 팩을 설치해야 합니다. 바인드 파일을 바인딩하려면 다음 권한 중 하나가 있어야 합니다.
- DBADM 권한
- 스키마에 대한 ALTERIN 특권
- 패키지의 BIND 특권
프로시저
바인드 파일을
바인딩하려면 다음을 수행하십시오.
- 기존 데이터베이스가 있는 Db2 데이터베이스 제품에 수정팩을 설치한 경우, 각 데이터베이스에 대해 다음 명령을 한 번씩 수행하십시오.
db2 terminate
db2 CONNECT TO dbname user USERID using PASSWORD
db2 BIND path\db2schema.bnd BLOCKING ALL GRANT PUBLIC SQLERROR CONTINUE
db2 BIND path\@db2ubind.lst BLOCKING ALL GRANT PUBLIC ACTION ADD
db2 BIND path\@db2cli.lst BLOCKING ALL GRANT PUBLIC ACTION ADD
db2 terminate
여기서,
dbname은
파일을 바인딩할 데이터베이스의 이름이며,
path는
바인드 파일이 위치한 디렉토리의 전체 경로 이름(예:
INSTHOME\sqllib\bnd, 여기서,
INSTHOME은
DB2 인스턴스의 홈 디렉토리를
나타냄)입니다.
db2ubind.lst 및
db2cli.lst에는
DB2 데이터베이스 제품이 사용하는 필수 파인드 파일의 목록이
포함되어 있습니다. 이미 바인드된 패키지에서는 SQL0719N 오류가
리턴됩니다. 이는 예측된 결과입니다.
- 선택사항: 기존 데이터베이스가 있는 Db2 데이터베이스 제품에 수정팩을 설치한 경우 REBIND 또는 db2rbind 명령을 실행하여 패키지를 리바인드하십시오.
수정팩을 설치한 후 일부 패키지는 유효하지 않은 것으로 표시됩니다. 유효하지 않은 것으로 표시된 패키지는 암시적으로 애플리케이션이 이를 처음 사용할 때
리바인드됩니다. 이러한 오버헤드를 제거하고 리바인드에 성공하도록 하려면
모든 패키지를 수동으로 리바인딩하십시오. 예를 들어,
다음과 같이 db2rbind 명령을 발행하십시오.
db2rbind dbname -l logfile all
여기서,
dbname은
패키지가 유효성이 다시 확인되어야 할 데이터베이스의 이름이고,
logfile은
패키지 유효성 다시 확인 프로시저 동안 오류를 기록하는 데 사용될 파일의 이름입니다.
- 기존의 공간 사용 가능 데이터베이스가 있는 Db2 데이터베이스 제품에 수정팩을 설치한 경우, 각 데이터베이스에 대해 다음 명령을 한 번씩 수행하십시오.
db2 terminate
db2 CONNECT TO dbname
db2 BIND path\BND\@db2gse.lst
db2 terminate
여기서,
dbname은
파일을 바인딩할 데이터베이스의 이름이며,
path는
바인드 파일이 위치한 디렉토리의 전체 경로 이름(예:
INSTHOME\sqllib\bnd, 여기서,
INSTHOME은
DB2 인스턴스의 홈 디렉토리를
나타냄)입니다.
db2gse.lst에는
DB2 Spatial Extender가 제공하는 스토어드 프로시저에 대한 파인드 파일의 이름이 포함되어 있습니다.
- 호스트 또는 System i 서버에서 Db2 데이터베이스에 연결하는 경우 다음 조치를 수행하십시오.
- For Db2 for z/OS 또는 OS/390® :
db2 terminate
db2 CONNECT TO dbname user USERID using PASSWORD
db2 BIND path\@ddcsmvs.lst BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC ACTION ADD
db2 terminate
- VM의 DB2 데이터베이스 경우
db2 terminate
db2 CONNECT TO dbname user USERID using PASSWORD
db2 BIND path\@ddcsvm.lst BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC ACTION ADD
db2 terminate
- VSE의 DB2 데이터베이스 경우
db2 terminate
db2 CONNECT TO dbname user USERID using PASSWORD
db2 BIND path\@ddcsvse.lst BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC ACTION ADD
db2 terminate
- System i의 Db2 데이터베이스의 경우:
db2 terminate
db2 CONNECT TO dbname user USERID using PASSWORD
db2 BIND path\@ddcs400.lst BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC ACTION ADD
db2 terminate
여기서 dbname 은 파일을 바인드해야 하는 호스트 또는 System i 데이터베이스의 이름을 나타내며, 여기서 path 는 바인드 파일이 있는 디렉토리의 전체 경로 이름입니다 (예: INSTHOME\sqllib\bnd ). 여기서 INSTHOME 은 Db2 인스턴스의 홈 디렉토리를 나타냅니다.
- 다른 운영 체제 (Linux®, UNIX 또는 Windows) 또는 다른 Db2 버전 또는 서비스 레벨에서 실행 중인 데이터베이스에 연결하는 경우 해당 데이터베이스에 대해 데이터베이스 유틸리티 및 CLI 바인드 파일을 바인드하십시오.
참고:
- 다른 DB2 데이터베이스 시스템 또는
동일한 머신의 다른 DB2 사본에 있는 데이터베이스에 연결하는지에 상관없이
필수 조치는 동일합니다.
- 여러 위치에 수정팩을 설치한 경우, 운영 체제 및 DB2 버전 또는 서비스 레벨의
고유한 조합 각각에 대해 조치를 한 번만 수행하십시오.
다음 조치를 수행하십시오.
db2 terminate
db2 CONNECT TO dbname user USERID using PASSWORD
db2 BIND path\@db2ubind.lst BLOCKING ALL GRANT PUBLIC ACTION ADD
db2 BIND path\@db2cli.lst BLOCKING ALL GRANT PUBLIC ACTION ADD
db2 terminate
여기서,
dbname은 파일을 바인드해야 하는 데이터베이스의 이름을 나타내고
path는 바인드 파일이 있는 디렉토리의 전체 경로 이름을 나타냅니다(예:
INSTHOME\sqllib\bnd, 여기서
INSTHOME은 명령을 발행 중인 인스턴스의 홈 디렉토리를 나타냄).
db2ubind.lst 및
db2cli.lst에는
DB2 데이터베이스 제품이 사용하는 필수 파인드 파일의 목록이
포함되어 있습니다. 이미 바인드된 패키지에서는 SQL0719N 오류가
리턴됩니다. 이는 예측된 결과입니다.
- 페더레이티드 데이터베이스를 사용 중인 경우, 데이터베이스에 연결하고 db2dsproc.bnd 및 db2stats.bnd 바인드 파일에서 BIND 명령을 실행하십시오.
다음 조치를 수행하십시오.
db2 CONNECT TO dbname user USERID using PASSWORD
db2 bind path/db2dsproc.bnd blocking all grant public
db2 bind path/db2stats.bnd blocking all grant public
db2 terminate
여기서
dbname은 페더레이티드 데이터베이스의 이름이고,
path는 바인드 파일이 있는 디렉토리의 전체 경로 이름(예:
$HOME/sqllib/bnd.
여기서
$HOME은
DB2 인스턴스 홈 디렉토리를 나타냄)입니다.