请问怎么连接MySQL更安全?

gogo6689 2020-6-25 377

我已经在【MySQL数据库】-【账号管理】页面,“创建账号”,填写需要访问MySQL的IP地址,设置需要访问的数据库权限。
可是在用pymysql连接数据库的时候,仍然需要“进入组件管理,设置开放外网访问”,
否则就会提示:pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on '***' ([WinError 10061] 由于目标计算机积极拒绝,无法连接。)")。
如果提前“进入组件管理,设置开放外网访问”,则可以顺利访问。
但是“MySQL怎么开放外网访问(允许所有IP连接)https://bbs.appnode.com/thread-833.htm”这个官方帖子里面警告:“直接将 MySQL 开放到公网是非常危险的(非常容易暴库导致数据泄露或被修改)。如果只是为了管理员自己连接使用,建议使用 phpMyAdmin 或 Navicat 的 SSH 隧道模式连接 MySQL 服务器。”所以,本菜鸟有点担心数据库安全。
请教下大家,怎么连接MySQL才更安全?
连接mysql语句如下:
con = pymysql.connect(host='*
',port=,user='',passwd='',db='',charset='utf8')

最新回复 (2)
  • 虚竹 2020-6-26
    引用 2

    不要将数据库端口暴露在公网,否则所有人都可以通过你开放的外网端口连接到你的数据库,再对密码进行爆破。
    如果程序和数据库部署在同一台服务器,直接用127.0.0.1连接即可。
    如果不在同一台服务器,将它们部署在同一个内网,用内网IP连接,如192.168.x.x。

  • gogo6689 2020-6-26
    引用 3
    虚竹 不要将数据库商品暴露在公网,否则所有人都可以通过你开放的外网端口连接到你的数据库,再对密码进行爆破。 如果程序和数据库部署在同一台服务器,直接用127.0.0.1连接即可。 如果不在同一台服务器, ...
    我的脚本是在电脑上的,请问appnode有没有专业的软件,把本地的电脑和租的服务器部署在同一个内网?我查了查资料,感觉操作很复杂,还是不太懂。
    目前暂时把数据库用户名和IP绑定了,但是连网的IP每次都有变化,每次都要打开、关闭公网访问,手动重新设置IP和密码。谢谢虚竹~
    感觉还是把程序和数据库部署在同一台服务器上,安全又方便。
返回
发新帖