sqoop连接mysq了,用root用户报错,换成普通用户就可以了。


1、用root用户连接,报错
[hadoop@ha1 ~]$ sqoop import --connect jdbc:mysql://192.168.255.11:3306/test --username root -password 123456 --table t1 -m 1
 13/05/12 19:36:04 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
 13/05/12 19:36:04 INFO tool.CodeGenTool: Beginning code generation
 13/05/12 19:36:05 ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user 'root'@'192.168.255.11' (using password: YES)
 13/05/12 19:36:05 ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user 'root'@'192.168.255.11' (using password: YES)
 java.sql.SQLException: Access denied for user 'root'@'192.168.255.11' (using password: YES)
         at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
         at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3603)
         at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3535)
         at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:934)
         at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4104)
         at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1299)
         at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2338)
         at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2371)
         at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2163)
         at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
         at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
         at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
         at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378)
         at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
         at java.sql.DriverManager.getConnection(DriverManager.java:582)
         at java.sql.DriverManager.getConnection(DriverManager.java:185)
         at com.cloudera.sqoop.manager.SqlManager.makeConnection(SqlManager.java:606)
         at com.cloudera.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:51)
         at com.cloudera.sqoop.manager.MySQLManager.execute(MySQLManager.java:201)
         at com.cloudera.sqoop.manager.SqlManager.getColumnNamesForRawQuery(SqlManager.java:112)
         at com.cloudera.sqoop.manager.SqlManager.getColumnNames(SqlManager.java:96)
         at com.cloudera.sqoop.orm.ClassWriter.generate(ClassWriter.java:924)
         at com.cloudera.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:82)
         at com.cloudera.sqoop.tool.ImportTool.importTable(ImportTool.java:337)
         at com.cloudera.sqoop.tool.ImportTool.run(ImportTool.java:423)
         at com.cloudera.sqoop.Sqoop.run(Sqoop.java:144)
         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
         at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:180)
         at com.cloudera.sqoop.Sqoop.runTool(Sqoop.java:218)
         at com.cloudera.sqoop.Sqoop.main(Sqoop.java:228)
 13/05/12 19:36:05 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.NullPointerException
 java.lang.NullPointerException
         at com.cloudera.sqoop.orm.ClassWriter.cleanColNames(ClassWriter.java:889)
         at com.cloudera.sqoop.orm.ClassWriter.generate(ClassWriter.java:951)
         at com.cloudera.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:82)
         at com.cloudera.sqoop.tool.ImportTool.importTable(ImportTool.java:337)
         at com.cloudera.sqoop.tool.ImportTool.run(ImportTool.java:423)
         at com.cloudera.sqoop.Sqoop.run(Sqoop.java:144)
         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
         at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:180)
         at com.cloudera.sqoop.Sqoop.runTool(Sqoop.java:218)
         at com.cloudera.sqoop.Sqoop.main(Sqoop.java:228)

2、换成hive用户,就可以了。

[hadoop@ha1 ~]$ sqoop import --connect jdbc:mysql://192.168.255.11:3306/test --username hive -password hive --table t1 -m 1
 13/05/12 19:39:52 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
 13/05/12 19:39:52 INFO tool.CodeGenTool: Beginning code generation
 13/05/12 19:39:52 INFO manager.MySQLManager: Executing SQL statement: SELECT t.* FROM `t1` AS t LIMIT 1
 13/05/12 19:39:52 INFO manager.MySQLManager: Executing SQL statement: SELECT t.* FROM `t1` AS t LIMIT 1
 13/05/12 19:39:52 INFO orm.CompilationManager: HADOOP_HOME is /hadoop/hadoop-0.20.2/bin/..
 13/05/12 19:39:52 INFO orm.CompilationManager: Found hadoop core jar at: /hadoop/hadoop-0.20.2/bin/../hadoop-0.20.2-core.jar
 13/05/12 19:39:55 INFO orm.CompilationManager: Writing jar file: /tmp/sqoop-hadoop/compile/1d908a6795a11d16b02c45842702585d/t1.jar
 13/05/12 19:39:55 WARN manager.MySQLManager: It looks like you are importing from mysql.
 13/05/12 19:39:55 WARN manager.MySQLManager: This transfer can be faster! Use the --direct
 13/05/12 19:39:55 WARN manager.MySQLManager: option to exercise a MySQL-specific fast path.
 13/05/12 19:39:55 INFO manager.MySQLManager: Setting zero DATETIME behavior to convertToNull (mysql)
 13/05/12 19:39:55 INFO mapreduce.ImportJobBase: Beginning import of t1
 13/05/12 19:39:55 INFO manager.MySQLManager: Executing SQL statement: SELECT t.* FROM `t1` AS t LIMIT 1
 13/05/12 19:39:59 INFO mapred.JobClient: Running job: job_201305121833_0001



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李晓LOVE向阳

你的鼓励是我持续的不断动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值