Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
1. oozie-site.xml의 db관련부분을 아래와 같이 설정해준다.
------------------------------------------------------------------------------------------------------------------------
   <property>
        <name>oozie.db.schema.name</name>
        <value>oozie</value>
        <description>
            Oozie DataBase Name
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.create.db.schema</name>
        <!-- value>false</value -->
        <value>true</value>
        <description>
            Creates Oozie DB.
            If set to true, it creates the DB schema if it does not exist. If the DB schema exists is a NOP.
            If set to false, it does not create the DB schema. If the DB schema does not exist it fails start up.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.driver</name>
        <!-- value>org.apache.derby.jdbc.EmbeddedDriver</value -->
        <value>com.mysql.jdbc.Driver</value>
        <description>
            JDBC driver class.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.url</name>
        <!-- value>jdbc:derby:${oozie.data.dir}/${oozie.db.schema.name}-db;create=true</value -->
        <value>jdbc:mysql://localhost:3306/${oozie.db.schema.name}_db</value>
        <description>
            JDBC URL.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.username</name>
        <!-- value>sa</value -->
        <value>hadoop</value>
        <description>
            DB user name.
        </description>
    </property>
    <property>
        <name>oozie.service.JPAService.jdbc.password</name>
        <value>hadoop</value>
        <description>
            DB user password.
            IMPORTANT: if password is emtpy leave a 1 space string, the service trims the value,
                       if empty Configuration assumes it is NULL.
        </description>
    </property>
------------------------------------------------------------------------------------------------------
2. mysql에 oozie에서 사용할 db를 생성한다.
mysql> create database oozie_db;
Query OK, 1 row affected (0.00 sec)
3. hadoop에 권한을 부여한다.
 mysql> grant all privileges on *.* to hadoop@localhost identified by 'hadoop' with grant option;
  Query OK, 0 rows affected (0.00 sec)
  mysql> flush;
  ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
  mysql> flush privileges;
  Query OK, 0 rows affected (0.00 sec)
4. mysql jdbc driver를 lib폴더에 copy한다.(oozie/lib에 복사하면 인식 안됩니다)
cp /home/hadoop/hive/lib/mysql-connector-java-5.1.30-bin.jar /home/hadoop/oozie/oozie-server/lib
5. oozie를 stop한다
oozie-stop.sh
6. oozie를 start한다.
oozie-start.sh