MySQL의 설치 구성의 하이브

A, MySQL 설치

  하이브 데이터는 HDFS에 존재합니다. 또한, 테이블을 각각 갖는베이스 하이브, 이러한 정보는 하이브 칭한다 메타 데이터 정보 .

  메타 데이터 정보는 HDFS 존재하지 않지만, 관계형 데이터베이스, 사용 하이브 기본이 저장소에 더비 데이터베이스 . 뿐만 아니라 그 하이브 작품은 하둡에 의존뿐만 아니라, 관계형 데이터베이스에 의존합니다.

  참고 : 우리는 HDFS 데이터베이스, 어떤 테이블과 테이블 데이터, 그러나,이 메타 데이터 정보가 아니며 어떤 하이브를 볼 수 있지만. HDFS 정보의 주 데이터 저장 하이브.

  문제 이전에 발생 : 종료 할 때 bin 디렉토리에서 하이브에 처음으로, bin 디렉토리의 metastore.db에 디렉토리를 생성하기 때문에, 아니, 하이브로 다른 디렉토리로 전환 라이브러리 테이블을 찾아, 이 디렉토리에, derby.log 저장하는 파일을 생성

메타 데이터 정보를 제공합니다. 메타 데이터 정보가된다 bin 디렉토리에 따라 만들 수 있습니다. 당신이 하이브로 다른 디렉토리로 전환 할 때, 쿼리가 찾는에 이르는 모든 메타 데이터 정보를 찾는 bin 디렉토리 쿼리를 기반으로하지 않습니다. 문제는 우리가 더비 데이터베이스를 사용할 수 없습니다. 또한, 더비 데이터베이스와 동시성을 지원하지 않습니다 같은 동작 하이브에있는 사람으로,이 시간에 하이브를 사용하려면 다른 사람이있는 경우,하지 걸릴 더비 데이터베이스 자체입니다. 그래서 우리는 MySQL의 데이터베이스를 사용하기로 결정했습니다. 현재 하이브 지원 더비를 모두 데이터베이스에는 mysql .

 리눅스 설치 과정에서 MySQL의 : 리눅스에서 MySQL을 설치

두, 하이브 MySQL의 구성 단계

①은 / usr / 하이브에 HDFS 삭제

    실행 : 하둡 FS의 -rmr / 사용자 / 하이브 (Hadoop을 시작할 필요가)

② MySQL의 드라이버 패키지는 lib 디렉토리 하이브의 설치 디렉토리에 업로드됩니다

    MySQL의 커넥터 - 자바-5.1.38-bin.jar를을 : 나는 업로드 명령 RZ 여기에 사용

프로필 하이브 / conf의, 이름을 추가 ③ : 하이브-site.xml 파일을

< 구성 > 
    < 특성 > 
        < 이름 > javax.jdo.option.ConnectionURL </ 이름 > 
        < > JDBC한다 : mysql : // hadoopalone : 3306 / 하이브 createDatabaseIfNotExist = 사실 </ > // mysql을的URL 
    </ 부동산 > 
    < 속성 > 
        < 이름 > javax.jdo.option.ConnectionDriverName </ 이름 > 
        < > com.mysql.jdbc.Driver </ > 
    </ 속성 >
    <특성 > 
        < 이름 > javax.jdo.option.ConnectionUserName </ 이름 > // mysql을的用户名
         < > 루트 </ >  
    </ 부동산 > 
    < 특성 > 
        < 이름 > javax.jdo.option.ConnectionPassword </ 이름 > // MySQL의的密码
        < > 루트 </ > 
    </ 속성 > 
</ 구성 >

  도시 된 바와 같이, 다음과 같은 구성을 추가

, bin 디렉토리로 이동 하이브에 ④ 실행 : SH 하이브 

  : 나타나는 경우
  액세스 사용자 '루트'@ 'hadoop01'(A 사용하여 암호 : YES) 거부이 오류, MySQL 데이터베이스를 작동 할 수있는 현재 사용자 권한을 의미하는 것은 충분하지 않습니다.

⑤ MySQL 데이터베이스로, 권한을 할당 

  执行 : * 모든 권한을 부여 * '루트'@ 'hadoopalone'를 부여 옵션 '루트'로 식별에;.

     * 모든 권한을 부여 * '루트'@ '%'를 '루트'로 식별합니다.;

  그런 다음 실행 : 플러시 권한 (세미콜론주의)

수동으로 하이브 데이터베이스를 만들 ⑥

  당신은 하이브를 입력에서, MySQL 데이터베이스가 자동으로 하이브를 생성하는 하이브를 만들기 위해 MySQL 데이터베이스에 진출하지 마십시오. 우리는 MySQL의 문자 집합을 구성하기 전에 가지고 있기 때문에, 그러나, 참고 UTF-8, 그래서 이것은 자동으로 데이터베이스 문자 집합이 UTF-8의 하이브 만듭니다.
  그러나 하이브는 문자 집합 메타 데이터는 ISO8859-1해야합니다 저장되어 있어야합니다. 그렇지 않은 경우, 하이브 테이블을 작성할 때 (잠시 동안 첫 번째 카드, 다음 오류가) 불평 할 것이다.

  MySQL의 실행을 입력 : 데이터베이스 하이브 문자는 라틴 세트 작성;

⑦ 상기 단계를 완료 한 후, 다시 입력 하이브 MySQL의 데이터를 다음 표에서 발견

  

연결 Navicat를 통해 ⑧ MySQL 데이터베이스

  

⑨는 DBS, TBLS, COLUMNS_V2 이러한 세 개의 테이블을 메타 데이터 정보를 볼 수 있습니다.

DBS 메타 데이터 정보는 데이터베이스에 저장

  

TBLS 테이블 정보는 테이블에 저장

  

COLUMNS 테이블 컬럼 필드 정보가 저장됩니다

   

또한, SDS 테이블을보고 위치에 HDFS를 조회 할 수 있습니다

  

 지금까지, 하이브 구성 MySQL과 당신은 완료! 당신은 질문이있는 경우, 함께 의견 모두가 논의.

 

추천

출처www.cnblogs.com/rmxd/p/11318609.html