从 Jupyter 笔记本连接到 MySQL 数据库
Posted
技术标签:
【中文标题】从 Jupyter 笔记本连接到 MySQL 数据库【英文标题】:Connect to MySQL db from Jupyter notebook 【发布时间】:2018-12-01 01:28:02 【问题描述】:我正在使用 Jupyter Notebooks 来学习 Python。我想连接到通过 MAMP 在本地托管的 mysql 数据库。我该如何处理?
【问题讨论】:
How do I connect to a MySQL Database in Python?的可能重复 【参考方案1】:import pymysql
import pandas as a
conn=pymysql.connect(host='localhost',port=int(3306),user='root',passwd='YOUR_PASSWORD',db='YOUR_DATABASENAME')
df=a.read_sql_query("SELECT * FROM 'YOUR_TABLENAME' ",conn)
print(df)
【讨论】:
也许您可以评论一下您的代码如何解决问题?【参考方案2】:假设您已安装 MySQL(使用 HomeBrew 的 macOS 的说明 here),您需要:
安装pip3 install ipython-sql
pip3 install mysqlclient
现在您应该能够运行这些单元格并获得打印精美的 html 输出:
# %%
%load_ext sql
# %%
%sql mysql+mysqldb://<user>:<password>@localhost/<dataBase>
# %%
%%sql
SELECT *
FROM <table>;
【讨论】:
【参考方案3】:import os
import pymysql
import pandas as pd
host = os.getenv('MYSQL_HOST')
port = os.getenv('MYSQL_PORT')
user = os.getenv('MYSQL_USER')
password = os.getenv('MYSQL_PASSWORD')
database = os.getenv('MYSQL_DATABASE')
conn = pymysql.connect(
host=host,
port=int(3306),
user="root",
passwd=password,
db="[YOUR_DB_NAME]",
charset='utf8mb4')
df = pd.read_sql_query("SELECT * FROM YOUR_TABLE",
conn)
df.tail(10)
【讨论】:
【参考方案4】:是的,你可以。您可以使用MySQL Connector 库。只需使用 pip 安装它,然后您就可以使用它与您的数据库进行交互。请看下面的示例代码:
import mysql.connector
db = mysql.connector.connect(
host="localhost",
user="mamp",
passwd=""
)
print(db)
【讨论】:
在 Notebook 中使用 Scala 怎么样?谢谢。我在使用 Scala 时遇到问题:***.com/questions/55154372/…,非常感谢。以上是关于从 Jupyter 笔记本连接到 MySQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章
从本地 jupyter notebook 连接到 spark 集群
将本地 IPython 笔记本连接到气隙集群上的 Spark