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...