Python远程连接MySQL的完整指南:从配置到代码实现
Python可以通过MySQL官方驱动mysql-connector-python或第三方库如PyMySQL实现远程连接MySQL数据库,确保MySQL服务器已开启远程访问权限,并配置防火墙允许3306端口通行,以下是具体步骤和示例代码:
-
MySQL服务器配置

- 登录MySQL服务器,修改用户权限:
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码'; FLUSH PRIVILEGES;
- 编辑MySQL配置文件(如
my.cnf),将bind-address改为0.0.0或服务器公网IP。 - 重启MySQL服务,并确保防火墙开放3306端口。
- 登录MySQL服务器,修改用户权限:
-
Python环境准备
安装连接库(任选其一):pip install mysql-connector-python # 官方驱动 pip install pymysql # 纯Python实现
-
Python连接代码示例
使用mysql-connector-python进行远程连接:import mysql.connector config = { 'user': '远程用户名', 'password': '密码', 'host': '服务器公网IP', 'port': 3306, 'database': '数据库名', 'charset': 'utf8mb4' } try: connection = mysql.connector.connect(**config) cursor = connection.cursor() cursor.execute("SELECT VERSION()") print("连接成功!MySQL版本:", cursor.fetchone()) except mysql.connector.Error as err: print("连接失败:", err) finally: if connection.is_connected(): cursor.close() connection.close() -
关键注意事项
- 安全风险:远程连接需使用强密码,建议通过SSH隧道或VPN加密传输。
- 连接超时处理:添加
connect_timeout参数避免网络延迟导致阻塞。 - 云数据库配置:阿里云、AWS等平台需在控制台设置白名单IP。
通过以上步骤,即可安全高效地用Python操作远程MySQL数据库,实际应用中,建议结合连接池(如DBUtils)管理资源,并定期备份数据以防意外丢失。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/16003.html发布于:2026-09-10





