使用python连接到Synology NAS上的MariaDB

2024-03-29 13:38:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个马里亚伯数据库在一个概要NAS。
我尝试使用python访问数据库,但它返回我计算机上的数据库(使用相同的凭据)。
给出的解决方案here不能解决我的问题。
我认为这是一个错误定义的凭证,但我无法确定是哪一个。在

import pymysql
import pandas as pd
from sshtunnel import SSHTunnelForwarder

sql_hostname = '192.168.1.21'
sql_username = 'root'
sql_password = 'Password'
sql_main_database = 'cm'
sql_port = 3306
ssh_host = '192.168.1.21'
ssh_password = 'Password'
ssh_user = 'admin'
localhost = '127.0.0.1'
ssh_port = 22

with SSHTunnelForwarder(
    (ssh_host, ssh_port),
    ssh_username=ssh_user,
    ssh_password=ssh_password,
    remote_bind_address=(sql_hostname, sql_port)) as tunnel:
    print(" local bind port = ", tunnel.local_bind_port)
    conn = pymysql.connect(host=localhost, user=sql_username,
        passwd=sql_password)

query = '''show databases;'''
data = pd.read_sql_query(query, conn)
conn.close()
data

Tags: import数据库hostsqlbindportasusername