简体   繁体   English

从 Jupyter 笔记本连接到 MySQL 数据库

[英]Connect to MySQL db from Jupyter notebook

I am using Jupyter Notebooks to learn Python.我正在使用 Jupyter Notebooks 来学习 Python。 I would like to connect to a MySQL db hosted locally hosted through MAMP.我想连接到通过 MAMP 托管在本地的 MySQL 数据库。 How would I approach this?我将如何处理这个问题?

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)

Assuming you have MySQL installed (instructionshere for macOS using HomeBrew), you need to:假设您已安装 MySQL(此处为使用 HomeBrew 的 macOS 的说明),您需要:

  • Install pip3 install ipython-sql安装pip3 install ipython-sql
  • pip3 install mysqlclient

now you should be able to run these cells and get pretty-printed HTML output:现在您应该能够运行这些单元格并获得打印精美的 HTML 输出:

# %%
%load_ext sql

# %%
%sql mysql+mysqldb://<user>:<password>@localhost/<dataBase>

# %%
%%sql

SELECT *
FROM <table>;
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)

Yes, you can.是的你可以。 You can use the MySQL Connector library.您可以使用MySQL 连接器库。 Simply install it using pip, and then you can use it to interact with your database.只需使用 pip 安装它,然后您就可以使用它与您的数据库进行交互。 See the sample code below:请参阅下面的示例代码:

import mysql.connector

db = mysql.connector.connect(
   host="localhost",
   user="mamp",
   passwd=""
)

print(db)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM