[HADOOP] Beeline을 사용하여 하이브에 연결하기
HADOOPBeeline을 사용하여 하이브에 연결하기
Beeline 클라이언트를 통해 내 컴퓨터에 설치된 하이브에 연결하려고합니다. 하이브에 'beeline'명령을주고 연결하면 클라이언트가 사용자 이름과 암호를 묻습니다.
!connect jdbc:hive2://localhost:10000/default
나는 사용자 이름과 암호가 무엇인지 알지 못합니다. 일부 구성 파일에 자격 증명 (사용자 이름 및 암호)을 추가해야합니까?
해결법
-
==============================
1.사용자 이름 없음 및 암호 없음.
사용자 이름 없음 및 암호 없음.
!connect jdbc:hive2://localhost:10000/default Enter username for jdbc:hive2://localhost:10000/default: <press Enter> Enter password for jdbc:hive2://localhost:10000/default: <press Enter>
Enter를 누르십시오. 그것은 나를 위해 작동합니다.
또는 이것을 시도하십시오.
!connect jdbc:hive2://localhost:10000/default "" "" ""
-
==============================
2.
beeline --incremental=true
참고 : 명령 줄 옵션 "-incremental = true"는 선택 사항이지만 유휴 상태를 유지하고 연결을 끊을 수없는 시간을 연장합니다.
!connect jdbc:hive2://silver-server- hive.app.google.com:10000/default
참고 : 사용자 이름과 암호를 묻는 메시지가 나타납니다. 사용자 이름과 암호 사용
beeline> !connect jdbc:hive2:// silver-server-hive.app.google.com:10000/default scan complete in 3ms Connecting to jdbc:hive2:// silver-server-hive.app.google.com:10000/default Enter username for jdbc:hive2:// silver-server-hive.app.google.com:10000/default:suman Enter password for jdbc:hive2:// silver-server-hive.app.google.com:10000/default: *********
set mapred.job.queue.name=<your queue name>;
주 : 조회를 실행하려면 대기열을 설정해야합니다.
USE google_map_data;
주 : 조회를 실행할 때 데이터베이스에 있어야합니다.
!reconnect jdbc:hive2:// silver-server-hive.app.google.com:10000/default;
!quit
노트:
beeline -u jdbc : hive2 : // silver-server-hive.app.google.com : 10000 \ -n
-p --incremental = true ** 기본 빔 쿼리 Beeline은 다양한 SQL 쿼리 기능을 지원합니다. 데이터에 대한 정보 얻기 데이터베이스 표시; USE <데이터베이스>; 쇼 테이블; DESC ; DESC FORMATTED
; 단순 제한된 select 문 SELECT * FROM google_map_city 한도 25;
==============================3.Beeline을 사용하여 Kerberos 보안이 활성화 된 서버 하이브 사용
Beeline을 사용하여 Kerberos 보안이 활성화 된 서버 하이브 사용
beeline -u "jdbc:hive2://<Server Ip>:<port>/sample;principal=<hive user>/<Server Ip>@<relam>;retries=3"
예
beeline -u "jdbc:hive2://10.10.10.10:8071/sample;principal=hive/10.10.10.10@abc.com;retries=3"
==============================4.@sravan이 언급 한대로 빈 사용자 이름과 암호를 사용할 수 있습니다. 이렇게하면 hiveserver2 프로세스가 실행중인 사용자로 쿼리가 실행됩니다.
@sravan이 언급 한대로 빈 사용자 이름과 암호를 사용할 수 있습니다. 이렇게하면 hiveserver2 프로세스가 실행중인 사용자로 쿼리가 실행됩니다.
그러나 hive-site.xml에서 hive.server2.enable.doAs 속성을 설정했거나 hiveserver2를 실행하는 중에 hiveconf에 넣으면 프롬프트를 통해 사용자 이름과 암호를 선택적으로 전달할 수 있습니다. 이 경우 하이브는 지정된 비밀번호를 사용하여 전달 된 사용자 이름으로 쿼리를 실행합니다. 여기서 사용자 이름은 시스템 사용자 이름입니다.
일부 시나리오에서는 hiveserver2 프로세스를 사용자 '하이브'로 실행하지만 HDFS 경로 / user / alex / table1로 정의 된 외부 테이블이 있으며 사용자 'alex'가 소유하고 다른 사용자는 없습니다 이 위치에서 읽기 / 쓰기 액세스. 이 경우 빈 사용자 이름과 암호를 넣어 '하이브'로 쿼리를 실행하면 디렉토리에 액세스 할 수없고 예외를 거부 한 예외를 throw 할 수 없으므로 작동하지 않습니다.
==============================5.클러스터에 로그인하는 데 사용되는 사용자 ID W 암호입니다. 때로는 서버에 로그인하는 데 사용하는 에지 노드 자격 증명입니다. 이것을 피하는 가장 좋은 방법은 아래 명령을 사용하는 것입니다.
클러스터에 로그인하는 데 사용되는 사용자 ID W 암호입니다. 때로는 서버에 로그인하는 데 사용하는 에지 노드 자격 증명입니다. 이것을 피하는 가장 좋은 방법은 아래 명령을 사용하는 것입니다.
beeline -u jdbc:hive2://localhost:10000/default
putty를 통해 이미 일부 노드에 로그인 한 경우 사용자 아이디 또는 비밀번호를 묻는 메시지가 표시되지 않습니다.
==============================6.• Beeline로드, URL 및 사용자 명 및 암호 제공 :
• Beeline로드, URL 및 사용자 명 및 암호 제공 :
**beeline -u jdbc:hive2:// silver-server-hive.app.google.com:10000\ -n <yourname> -p <yourpassword> --incremental=true**
==============================7.예, tge conf 폴더의 hive-site.xml 파일에서 사용자 이름과 암호를 설정할 수 있습니다. 기본 자격 증명은 APP / mine입니다.
예, tge conf 폴더의 hive-site.xml 파일에서 사용자 이름과 암호를 설정할 수 있습니다. 기본 자격 증명은 APP / mine입니다.
하이브에서 데이터베이스 사용자 이름 및 암호를 얻는 방법
from https://stackoverflow.com/questions/29113323/connecting-to-hive-using-beeline by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 원반 클러스터에서 실행중인 스파크 작업 java.io.FileNotFoundException : 파일이 마스터 노드에서 종료 되더라도 파일이 존재하지 않습니다. (0) 2019.06.15 [HADOOP] Hadoop MapReduce의 오류 (0) 2019.06.15 [HADOOP] 스파크 : 작업 간 지연 시간이 길다. (0) 2019.06.15 [HADOOP] BufferedReader.close ()를 수행 할 때 Hadoop FileSystem이 예외를 종료했습니다. (0) 2019.06.15 [HADOOP] Hadoop-Hive에서 테이블을 삭제하거나 자르는 방법은 무엇입니까? (0) 2019.06.15