python 讀取mysql資料

2021-09-28 16:11:30 字數 2101 閱讀 4533

import pymysql

import pandas as pd

defload_data_from_mysql()

: conn = pymysql.connect(host=

"127.0.0.1"

, port=

3306

, user=

"test"

, password=

"test"

, db=

"database"

, charset=

"utf8"

) cursor = conn.cursor(

) sql =

"select * from table1"

cursor.execute(sql)

result = cursor.fetchall(

)return result

if __name__==

"__main__"

: load_data_from_mysql(

)

import pymysql

import pandas as pd

defload_data_frame_from_mysql()

: conn = pymysql.connect(host=

"127.0.0.1"

, port=

3306

, user=

"test"

, password=

"test"

, db=

"database"

, charset=

"utf8"

) sql =

"select * from table1"

data_frame = pd.read_sql(sql, conn)

return data_frame

在實際應用中,我們可能有使用ssh讀取mysql資料庫的情況。由於限制了兩台機器之間只能通過私鑰連線,所以整個過程的結果如下。

安裝sshtunnel

pip install sshtunnel
python**

with sshtunnelforwarder(

ssh_address_or_host=

('跳板機位址'

, 跳板機埠)

, ssh_username=

'跳板機賬戶名'

, ssh_pkey=

'本機id_rsa位址'

, remote_bind_address=

('遠端資料庫位址'

, 資料庫埠)

)as tunnel:

conn = pymysql.connect(host=

"127.0.0.1"

,//必須是127.0

.0.1

port=server.local_bind_port,

user=

"資料庫使用者名稱"

, password=

"資料庫密碼"

, db=

"資料庫"

)

cursor = conn.cursor(

) sql =

"select * from 表名"

cursor.execute(sql)

result = cursor.fetchall(

)print

(result)

python 連線mysql插入讀取資料

import mysqldb 連線資料庫 conn mysqldb.connect host 192.358.12.34 port 3306,user root passwd adminkcsd db sbd charset utf8 讀取資料 cur conn.cursor a cur.execu...

Python讀取mysql資料庫資料出現中文亂碼

python連線mysql資料庫時,讀取資料庫中的中文出現亂碼,所有中文都顯示為問號了,我解決問題的步驟如下 開發環境 python版本 python3.6 mysql版本 mysql 5.5.56 winx64 pymysql 版本 pymysql 0.7.11 執行pip install pym...

Python 在 MySQL 中讀取 寫入資料

import pandas as pd from sqlalchemy import create engine import pymysql 準備乙個示例資料 df ts.get hist data 000875 讀取資料,格式為dataframe 建立乙個engine engine create...