Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Hive, mail # user - changing metastore of Hive to MySQL problem


Copy link to this message
-
Re: changing metastore of Hive to MySQL problem
Viral Bajaria 2011-06-04, 03:01
if you plan to use a user from a remote server you need to wild-card that
user when granting rights on mysql ...

so just like sanjeev said, you have to make sure that the user APP has the
rights to connect from any machine and not just the localhost.

run the command:
select * from mysql.user where user = 'APP'

this should show you details about the user APP and whether it is allowed
access from any remote machine with a wild card '%' option.

-Viral

On Fri, Jun 3, 2011 at 5:47 PM, Ayon Sinha <[EMAIL PROTECTED]> wrote:

> Hi Sanjeev,
> I'm not sure what is the mysql id issue. Where is Hive even getting this '
> *APP*'@'*dwdb002*.internal.xxxxxxx.com' ? We asked it to connect to a
> machine called internaldb001 with a username 'app'.
> Why is Hive picking up "dwdb02" which is the machine it is running on and
> 'APP' which is the default username in hive-default.xml ?
>
> -Ayon
> See My Photos on Flickr <http://www.flickr.com/photos/ayonsinha/>
> Also check out my Blog for answers to commonly asked questions.<http://dailyadvisor.blogspot.com>
>
> ------------------------------
> *From:* sanjeev sagar <[EMAIL PROTECTED]>
> *To:* [EMAIL PROTECTED]; Ayon Sinha <[EMAIL PROTECTED]>
> *Sent:* Friday, June 3, 2011 4:58 PM
> *Subject:* Re: changing metastore of Hive to MySQL problem
>
> This is your mysql id issue. I'm guessing that your id '*APP*'@'*dwdb002*.
> internal.xxxxxxx.com'  domain is not same like you do in mysql user
> table.
>
> Try this: show grants for '*APP*'@'*dwdb002*.internal.xxxxxxx.com'  and
> this will tell you if you've defined it right.
>
> Meanwhile you can have a separate hive id like hive@'%' in your mysql for
> testing. And you can mention id and pswd in the hive-site.xml file.
>
> -Sanjeev
>
> On Fri, Jun 3, 2011 at 4:52 PM, Ayon Sinha <[EMAIL PROTECTED]> wrote:
>
> Hi,
> I am trying to change the metastore from Derby to Mysql and following the
> directions.
> We changed the hive-site.xml to point to the right jdbc connection URL. The
> jars are available in the classpath. It seems to pick up the local box's
> hostname and try default username and password.
>  Neither the XML change nor the command line arg is affecting it.
>
> I have this in xml file
> <property>
>   <name>javax.jdo.option.ConnectionDriverName</name>
>   <value>com.mysql.jdbc.Driver</value>
>   <description>Driver class name for a JDBC metastore</description>
> </property>
>
> <property>
>   <name>hive.metastore.local</name>
>   <value>true</value>
> </property>
>
> <property>
>   <name>javax.jdo.option.ConnectionURL</name>
>   <value>jdbc:mysql://*internaldb001*.internal.xxxxx.com/hive_metastore
> </value>
> </property>
>
> <property>
>   <name>javax.job.option.ConnectionUserName</name>
>   <value>app</value>
> </property>
>
> <property>
>   <name>javax.jdo.option.ConnectionPassword</name>
>   <value>xxxxxxxx</value>
> </property>
>
>
>
> hive -hiveconf  javax.jdo.option.ConnectionURL=jdbc:mysql://*internaldb001
> */hive_metastore -e "show tables"
> Hive history file=/tmp/ayon/hive_job_log_ayon_201106032335_873482984.txt
> FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Access
> denied for user '*APP*'@'*dwdb002*.internal.xxxxxxx.com' (using password:
> YES)
> NestedThrowables:
> java.sql.SQLException: Access denied for user 'APP'@'
> dwdb002.internal.shopkick.com' (using password: YES)
> FAILED: Execution Error, return code 1 from
> org.apache.hadoop.hive.ql.exec.DDLTask
>
> -Ayon
> See My Photos on Flickr <http://www.flickr.com/photos/ayonsinha/>
> Also check out my Blog for answers to commonly asked questions.<http://dailyadvisor.blogspot.com>
>
>
>
>
>
> --
> Sanjeev Sagar
>
>
>