SAP HANA DB 에서 SYSTEM 계정은 패스워드가 바뀌어도 AP 서버와의 연결에는 문제가 없다.
그러나 DB-AP 연결에 사용되는 Schema 계정은 패스워드가 변경된다면, 반드시 AP 서버의 HANA Client 에서 Schema 계정의 연결 정보(자격증명) 가 저장된 SAP HANA User Store(이전 Secure User Store) 를 업데이트 해줘야 한다.
Schema 계정의 패스워드를 변경하고 Secure User Store 를 업데이트 하지 않은 경우, DB 연결 계정의 연결 정보(User 이름, 비밀번호) 가 달라졌기 때문에 AP 서버에서는 DB 서버로 접속할 수 없다.
마찬가지로 AP 서버에서 R3trans -d 또는 R3trans -x 명령어로 DB 연결을 체크할때, RC = 0012 로 실패하게 되며, 이때 생성되는 trans.log 를 살펴보면 Schema 계정에 대한 로그인 실패를 확인할 수 있다.
따라서, 다음과 같이 hdbuserstore 명령어를 통해 새로이 로그인 정보를 저장해야 한다.
아래 hdbuserstore 명령어는 전부 HANA Client 가 설치된 AP 서버의 OS 상에서
<SID>adm
계정으로 수행한다.
기본적으로 SAP HANA User Store 는 SAP HANA Client 를 설치할때, 패키지로 같이 설치되며, 기본 위치는 다음과 같다.
$HOME/.hdb/<Hostname>/
<%ALLUSERSPROFILE%>\.hdb\<Hostname>\<security-identifier(SID)>\
실행파일인 hdbuserstore 는 HANA Client 내에 위치한다.
SAP HANA User Store 는 데이터 파일과 암호화 키 파일, 두개로 구성된다.
<path to the user store>/SSFS_HDB.DAT
<path to the user store>/SSFS_HDB.KEY
해당 파일 구성은 다음 명령어를 통해서도 확인가능하다.
hdbuserstore list
수행하면, 다음과 같은 정보가 표시된다.
<Key Name>
다음 명령어를 사용하여, 신규 생성 및 기존 연결정보를 업데이트할 수 있다.
hdbuserstore SET <KEY> <SAP HANA DB Hostname>:<SYSTEM DB SQL Port>[@<TENANT DB SID>] <Schema User Name> <Password>
여기서 대괄호 속의
[@<TENANT DB SID>]
는 생략할 수 있다.
생성하는 연결 정보 이름이라고 보면 된다.
기본 설정은 DEFAULT
이므로, 기존 연결정보를 업데이트한다면 DEFAULT
를 사용
(밑줄, 하이픈, 마침표, 영대소문자, 숫자 가능 / 결과 키는 항상 대문자 이므로 대문자로 입력 권장)
타겟 DB 서버 Hostname 또는 IP
SYSTEM DB SQL Port 는 고정되어있다.
SQL Port - 3<Instance Number>13
을 입력하면 된다.
HANA DB 를 설치할때 사용한 SWPM 버전에 따라서 다르다.
SAP ABAP 일 경우, SAPABAP1 (또는 1이상) 또는 SAPHANADB 가 기본이다.
SAP J2EE 일 경우, SAPJAVA1 (또는 1이상) 이다.
다음 Notes 에 따르면, 패스워드에
$
와 같은 문자가 포함되어있으면, 패스워드가 제대로 설정되지 않을 수 있다고 한다.
이럴 경우, 패스워드를 작은 따옴표로 감싸면 된다. (ex.'<Password>'
)
- SAP Notes 2833567 - Password does not update in hdbuserstore
정상적으로 User Store 업데이트를 완료했다면, 다음 명령어를 사용해 해당 연결 정보를 테스트 해볼 수 있다.
hdbsql -U <KEY>
HANA DB Schema 계정과 HANA Client User Store 연결 정보가 정상적으로 일치된다면, hdbsql 커맨드 창으로 진입하는 것을 확인할 수 있다.
❗❗❗ 만약, 연결 정보가 일치하는데도 연결이 실패한다면, 이미 잘못된 연결 정보로 인해 Schema 계정이 잠겨있을 수도 있다.
이 경우, HANA Cockpit 또는 HANA Studio 를 통해서 Schema 계정의 잠금을 풀어주거나, 패스워드 정책 메뉴의 사용자 잠금 시간을 일시적으로 0으로 설정하면 된다.
이 외 다양한 오류들은 다음 Notes 를 통해서 확인해보기 바란다.
- SAP Notes 3158257 - FAQ: SAP HANA User Store (hdbuserstore) -> 17. What are typical issues and errors in the context of the HANA User Store?