The jdbc driver jar is not on classpath, please add it using --jars On Wed, Jun 15, 2016 at 12:45 PM, Tejaswini Buche < tejaswini.buche0...@gmail.com> wrote:
> hi, > > I am trying to connect to a mysql database on my machine. > But, I am getting some error > > dataframe_mysql = sqlContext.read.format("jdbc").options( > url="jdbc:mysql://localhost:3306/my_db", > driver = "com.mysql.jdbc.Driver", > dbtable = "data1", > user="123").load() > > > below is the full trace - > > ---------------------------------------------------------------------------Py4JJavaError > Traceback (most recent call > last)<ipython-input-6-65a38b59cc1e> in <module>() 4 dbtable = > "data1", 5 user="root",----> 6 password="123").load() 7 > /Users/tejaV/Documents/My_Study_folder/spark-1.6.1/python/pyspark/sql/readwriter.pyc > in load(self, path, format, schema, **options) 137 return > self._df(self._jreader.load(path)) 138 else:--> 139 > return self._df(self._jreader.load()) 140 141 @since(1.4) > /Users/tejaV/Documents/My_Study_folder/spark-1.6.1/python/lib/py4j-0.9-src.zip/py4j/java_gateway.py > in __call__(self, *args) 811 answer = > self.gateway_client.send_command(command) 812 return_value = > get_return_value(--> 813 answer, self.gateway_client, > self.target_id, self.name) 814 815 for temp_arg in temp_args: > /Users/tejaV/Documents/My_Study_folder/spark-1.6.1/python/pyspark/sql/utils.pyc > in deco(*a, **kw) 43 def deco(*a, **kw): 44 try:---> 45 > return f(*a, **kw) 46 except > py4j.protocol.Py4JJavaError as e: 47 s = > e.java_exception.toString() > /Users/tejaV/Documents/My_Study_folder/spark-1.6.1/python/lib/py4j-0.9-src.zip/py4j/protocol.py > in get_return_value(answer, gateway_client, target_id, name) 306 > raise Py4JJavaError( 307 "An error occurred > while calling {0}{1}{2}.\n".--> 308 format(target_id, > ".", name), value) 309 else: 310 raise > Py4JError( > Py4JJavaError: An error occurred while calling o98.load. > : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver > at java.net.URLClassLoader.findClass(URLClassLoader.java:381) > at java.lang.ClassLoader.loadClass(ClassLoader.java:424) > at java.lang.ClassLoader.loadClass(ClassLoader.java:357) > at > org.apache.spark.sql.execution.datasources.jdbc.DriverRegistry$.register(DriverRegistry.scala:38) > at > org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anonfun$createConnectionFactory$1.apply(JdbcUtils.scala:45) > at > org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anonfun$createConnectionFactory$1.apply(JdbcUtils.scala:45) > at scala.Option.foreach(Option.scala:236) > at > org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$.createConnectionFactory(JdbcUtils.scala:45) > at > org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$.resolveTable(JDBCRDD.scala:120) > at > org.apache.spark.sql.execution.datasources.jdbc.JDBCRelation.<init>(JDBCRelation.scala:91) > at > org.apache.spark.sql.execution.datasources.jdbc.DefaultSource.createRelation(DefaultSource.scala:57) > at > org.apache.spark.sql.execution.datasources.ResolvedDataSource$.apply(ResolvedDataSource.scala:158) > at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:119) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:231) > at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:381) > at py4j.Gateway.invoke(Gateway.java:259) > at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:133) > at py4j.commands.CallCommand.execute(CallCommand.java:79) > at py4j.GatewayConnection.run(GatewayConnection.java:209) > at java.lang.Thread.run(Thread.java:745) > > > -- Best Regards Jeff Zhang