Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I'm trying to use an ETL (in my current case, the free version of Talend). I've successfully set up a MySQL on Amazon RDS, logged in through the MySQL Workbench for Mac, and uploaded my company's Salesforce Tables into the database, using a text file to create the fields/tables.

That has all worked out well. I've actually been using CDIR security records every time I log in, using my current IP address. I know its not perfect, but its been working so far.

The trouble arises when I try to use an ETL to transfer data in the form of a 'job'. I get this error, no matter what I try to do:

[statistics] connecting to socket on port 3700
[statistics] connected
Exception in component tMysqlOutput_1
java.sql.SQLException: Access denied for user '(Username)'@'c-(IPAddress).hsd1.pa.comcast.net' (using password: YES)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3566)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3498)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:919)
    at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4004)
    at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1284)
    at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2312)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2122)
    at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:774)
    at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:49)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
[statistics] disconnected
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
    at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:375)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:289)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at sqmigration.sfdcmigration_0_1.SFDCMigration.tSalesforceInput_1Process(SFDCMigration.java:2391)
    at sqmigration.sfdcmigration_0_1.SFDCMigration.runJobInTOS(SFDCMigration.java:4799)
    at sqmigration.sfdcmigration_0_1.SFDCMigration.main(SFDCMigration.java:4667)
Job SFDCMigration ended at 16:17 16/09/2012. [exit code=1]

Any Ideas what in the world is happening here? Is it because of my Users? I'm logging in as the master account, that I set through the AWS management portal. I tried creating new users using phpMyAdmin (running on my local machine, with MAMP, connected to the database), but I was getting errors there as well granting privs.

Sorry if this is remedial. Just trying to learn how this stuff works and help my company!

Thanks,

Charlie

share|improve this question
    
If you can connect to RDS, run this query : SELECT CONCAT('''',user,'''@''',host,,'''') from mysql.user;. Do you see ``username`@'%'` ? –  RolandoMySQLDBA Sep 26 '12 at 20:22
    
Did you set up the DB Security Group when you created the MySQL RDS Instance ??? –  RolandoMySQLDBA Sep 26 '12 at 20:31
    
I updated the security group (simply the default) with my local machine's IP address. I think it is strange that I can be connected through the workbench/phpMyAdmin/etc, but Talend is then getting and authentication error. I'll try the code snippet you sent over ASAP. –  CDD Sep 27 '12 at 12:36
    
I ran the script - I got all of the users, of which there is the master user, displayed as "username'@'%' , along wiht a few other usernames that I have tried to create, and rdsadmin. If my master user is displayed as '@'%', that means it can connect from any host, correct? –  CDD Sep 27 '12 at 12:48
    
You should be able to. Please review the DB security group you defined the instance with. Check the CIDR within it. –  RolandoMySQLDBA Sep 27 '12 at 13:09
show 4 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.