mac安装Pyspark并毗连Mysql

[复制链接]
发表于 2025-10-29 10:08:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

  • 安装Scala, apache-spark, Hadoop
  1. brew install scala
  2. brew install apache-spark
  3. brew install hadoop
  4. pip install pyspark
复制代码
注意不要自己别的安装jdk, 会造成版本对不上报错。由于安装apache-spark的过程中会自动安装openjdk。

  • 设置环境变量
  1. JAVA_HOME=/opt/homebrew/Cellar/openjdk@11/11.0.26/libexec/openjdk.jdk/Contents/Home
  2. export PATH=$PATH:$JAVA_HOME/bin
  3. export CLASSPATH=$JAVA_HOME/lib
  4. export JAVA_HOME
  5. SCALA_HOME=/opt/homebrew/opt/scala
  6. export PATH=$PATH:$SCALA_HOME/bin
  7. export SPARK_PATH=/opt/homebrew/Cellar/apache-spark/3.5.4
  8. export PATH=$PATH:$SPARK_PATH/bin
  9. export openjdk_home=/opt/homebrew/Cellar/openjdk@17/17.0.14
  10. HADOOP_HOME=/opt/homebrew/Cellar/hadoop/3.4.1
  11. export PATH=$PATH:/$HADOOP_HOME/bin
复制代码
注意jdk版本不对会造成Py4JJavaError: An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext.: java.lang.UnsupportedOperationException: getSubject is supported only if a security manager is allowed

  • 下载jdbc driver
    链接, 选择 Platform Independent
将下载的解压包中的jar文件拷贝到apache-spark的目次下: /opt/homebrew/Cellar/apache-spark/3.5.4/libexec/jars
  1. from pyspark.sql import SparkSession
  2. from pyspark import SparkContext
  3. # sc = SparkContext.getOrCreate()
  4. sparkdriver = SparkSession.builder.\
  5.     appName('demo').\
  6.     master('local[*]').\
  7.     config('spark.driver.extraClassPath', '/opt/homebrew/Cellar/apache-spark/3.5.4/libexec/jars/mysql-connector-j-9.2.0.jar').\
  8.     getOrCreate()
  9.    
  10. df_mysql = sparkdriver.read.format('jdbc').\
  11.     option('url', 'jdbc:mysql://localhost:3306').\
  12.     option('driver', 'com.mysql.jdbc.Driver').\
  13.     option('user', 'root').\
  14.     option('password', '123').\
  15.     option('query', 'select * from tablename').\
  16.     load()
  17. df_mysql.show(10)
复制代码
  Connect MySQL with PySpark using JDBC Connector (Mac 2022)
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表