zoukankan      html  css  js  c++  java
  • CM使用MySQL数据库预处理scm_prepare_database.sh执行报错:java.sql.SQLException: Access denied for user 'scm'@'hadoop101.com' (using password: YES)

    1.报错提示:

    [root@hadoop101 ~]# /opt/module/cm/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hhadoop101 -uroot -p000000 --scm-host hadoop101 scm scm scm
    JAVA_HOME=/opt/module/jdk1.8.0_121
    Verifying that we can write to /opt/module/cm/cm-5.12.1/etc/cloudera-scm-server
    log4j:ERROR Could not find value for key log4j.appender.A
    log4j:ERROR Could not instantiate appender named "A".
    Creating SCM configuration file in /opt/module/cm/cm-5.12.1/etc/cloudera-scm-server
    Executing:  /opt/module/jdk1.8.0_121/bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/opt/module/cm/cm-5.12.1/share/cmf/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /opt/module/cm/cm-5.12.1/etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.
    log4j:ERROR Could not find value for key log4j.appender.A
    log4j:ERROR Could not instantiate appender named "A".
    [2019-08-14 15:27:09,565] INFO     0[main] - com.cloudera.enterprise.dbutil.DbCommandExecutor.parseSqlState(DbCommandExecutor.java) - Unable to login using supplied username/password.
    [2019-08-14 15:27:09,591]ERROR    26[main] - com.cloudera.enterprise.dbutil.DbCommandExecutor$DbConnectionTestException.logError(DbCommandExecutor.java) - Error when connecting to database.
    java.sql.SQLException: Access denied for user 'scm'@'hadoop101.com' (using password: YES)
            at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4237)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4169)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:928)
            at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1750)
            at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1290)
            at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2493)
            at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2526)
            at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2311)
            at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
            at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
            at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
            at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
            at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)
            at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:347)
            at java.sql.DriverManager.getConnection(DriverManager.java:664)
            at java.sql.DriverManager.getConnection(DriverManager.java:247)
            at com.cloudera.enterprise.dbutil.DbCommandExecutor.testDbConnection(DbCommandExecutor.java:253)
            at com.cloudera.enterprise.dbutil.DbCommandExecutor.main(DbCommandExecutor.java:138)
    [2019-08-14 15:27:09,597]ERROR    32[main] - com.cloudera.enterprise.dbutil.DbCommandExecutor$DbConnectionTestException.logError(DbCommandExecutor.java) - Exiting with exit code 8
    --> Error 8, giving up (use --force if you wish to ignore the error)

    报错提示scm用户访问不了数据库,即scm权限问题

    2.解决:

    授权scm用户所有访问权限:

    mysql> use mysql;
    mysql> select User,Host,Password from user;
    +------+-----------+-------------------------------------------+
    | User | Host      | Password                                  |
    +------+-----------+-------------------------------------------+
    | root | %         | *DDA7B4594264195DA8BB303516D7EC5509B7B942 |
    | scm  | hadoop101 | *45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE |
    +------+-----------+-------------------------------------------+
    2 rows in set (0.00 sec)
    mysql> show grants for scm;
    +----------------------------------------------------------------------------------------------------+
    | Grants for scm@% |
    +----------------------------------------------------------------------------------------------------+
    | GRANT USAGE ON *.* TO 'scm'@'%' IDENTIFIED BY PASSWORD '*45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE' |
    +----------------------------------------------------------------------------------------------------+
    1 row in set (0.00 sec)
    
    mysql> grant all privileges on *.* to'scm'@'%' identified by 'scm' with grant option;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> show grants for scm;
    +-------------------------------------------------------------------------------------------------------------------------------+
    | Grants for scm@% |
    +-------------------------------------------------------------------------------------------------------------------------------+
    | GRANT ALL PRIVILEGES ON *.* TO 'scm'@'%' IDENTIFIED BY PASSWORD '*45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE' WITH GRANT OPTION |
    +-------------------------------------------------------------------------------------------------------------------------------+
    1 row in set (0.00 sec)
    
    mysql> drop database cm;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> exit;

    3.再次执行:

    [root@hadoop101 ~]# /opt/module/cm/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hhadoop101 -uroot -pasdf1234 --scm-host hadoop101 scm scm scm
    JAVA_HOME=/opt/module/jdk1.8.0_121
    Verifying that we can write to /opt/module/cm/cm-5.12.1/etc/cloudera-scm-server
    log4j:ERROR Could not find value for key log4j.appender.A
    log4j:ERROR Could not instantiate appender named "A".
    Creating SCM configuration file in /opt/module/cm/cm-5.12.1/etc/cloudera-scm-server
    Executing:  /opt/module/jdk1.8.0_121/bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/opt/module/cm/cm-5.12.1/share/cmf/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /opt/module/cm/cm-5.12.1/etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.
    log4j:ERROR Could not find value for key log4j.appender.A
    log4j:ERROR Could not instantiate appender named "A".
    [2019-08-14 15:50:54,732] INFO     0[main] - com.cloudera.enterprise.dbutil.DbCommandExecutor.testDbConnection(DbCommandExecutor.java) - Successfully connected to database.
    All done, your SCM database is configured correctly!

    log4j:ERROR Could not find value for key log4j.appender.A错误按照网上说法对root用户授最大权限,但是试了还是报,最终提示成功了就没管,如果有其他方法请指教!

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'  IDENTIFIED BY '000000'  WITH GRANT OPTION;
    Query OK, 0 rows affected (0.00 sec)
  • 相关阅读:
    RE
    【LeetCode】198. House Robber
    【LeetCode】053. Maximum Subarray
    【LeetCode】152. Maximum Product Subarray
    【LeetCode】238.Product of Array Except Self
    【LeetCode】042 Trapping Rain Water
    【LeetCode】011 Container With Most Water
    【LeetCode】004. Median of Two Sorted Arrays
    【LeetCode】454 4Sum II
    【LeetCode】259 3Sum Smaller
  • 原文地址:https://www.cnblogs.com/MWCloud/p/11352557.html
Copyright © 2011-2022 走看看