python如何连接sql server数据库,ssh远程执行python本地脚本

  python如何连接sql server数据库,ssh远程执行python本地脚本

  本文主要介绍基于ssh的Python远程连接Mysql数据库的详细说明。有需要的朋友可以借鉴一下,希望能有所帮助。祝大家进步很大,早日升职加薪。

  00-1010后台安装支持库连接Mysql自定义查询功能

  

目录

  如果你需要访问远程服务器的Mysql数据库,但是在Mysql数据库的安全期内,安全措施设置为只允许本地连接(即需要登录服务器才能使用),其他远程连接不能直接访问,并且相应的端口已经被修改,那么你需要基于ssh连接数据库。以这种方式连接数据库与Navicat中基于ssh的接口连接是一样的。

  Navicat

  连接数据库

  

背景

  如果要连接Mysql,首先需要安装pymysqlpip install pymysql。

  安装sshTUNELPIP,这个基于SSH的库,安装SSH Tunnel #,最新版本0.3.1。

  建议安装最新的sshtunnel库。老版本库有一些bug。

  

安装支持库

  基于ssh连接Mysql。可以查看sshtunnel的文档,里面有一些案例。

  使用SSHTunnelForwarder(

  (192.168.1.1, 2222),

  ssh_password=123456 ,

  ssh_username=root ,

  远程绑定地址=(127.0.0.1 ,3306))作为服务器:

  打印(“SSH连接成功”)

  conn=pymysql . connect(host= 127 . 0 . 0 . 1 ,

  port=server.local_bind_port

  user=root ,

  database=data ,

  charset=utf8 )

  打印(“mysql数据库连接成功”)

  cursor=conn.cursor()

  .#获取数据操作,此处省略。

  cursor.close()

  conn.close()

  

连接Mysql

  上面的连接可以封装成一个函数,方便其他地方使用。

  def mysql_ssh(sql,args=None):

  使用SSHTunnelForwarder(

  (192.168.1.1, 2222),

  ssh_password=123456 ,

  ssh_username=root ,

  远程绑定地址=(127.0.0.1 ,3306))作为服务器:

  打印(“SSH连接成功”)

  conn=pymysql . connect(host= 127 . 0 . 0 . 1 ,

  port=server.local_bind_port

  user=root ,

  database=data ,

  charset=utf8 )

  打印(“mysql数据库连接成功”)

  cursor=conn.cursor()

  打印(“光标获取成功”)

  尝试:

  Print(f 执行查询语句:{sql}参数:{args} )

  游标. execute(sql,args)

  打印(“数据查询成功”)

  conn.commit()

  打印(“交易提交成功”)

  datas=cursor.fetchall()

  成功=真

  例外:

  打印(“数据查询失败”)

  数据=无

  成功=假

  打印(“关闭数据库连接”)

  cursor.close()

  conn.close()

  返回数据,成功

  注意点:

  使用数据库时,必须以标准化的方式使用conn.commit()、cursor.close()和conn.close()。在防止参数引入不必要的bug时,建议使用该方法cursor.execute(sql,args),以防止sql注入的风险。相关参考:

  Python txt数据加载乱码问题的升级解决方案

  Python文件打包成exe可执行程序。

  以上是Python基于ssh远程连接Mysql数据库的细节。关于Python的SSH远程连接Mysql的更多信息,请关注盛行IT软件开发工作室的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 关系型数据库与非关系型数据库简介一样吗,关系型数据库非关系型数据库有哪些
  • 关系型数据库与非关系型数据库简介一样吗,关系型数据库非关系型数据库有哪些,关系型数据库与非关系型数据库简介
  • 关于redis数据库入门详细介绍图片,redis数据库的使用,关于Redis数据库入门详细介绍
  • 使用php连接mysql数据库,php连接数据库的方法
  • 使用php连接mysql数据库,php连接数据库的方法,一文详解PHP连接MySQL数据库的三种方式
  • 什么是分库分表,为什么要进行分库分表-,分库分表的区别,数据库分库分表是什么,什么情况下需要用分库分表
  • vb中adodb连接数据库,
  • treeview控件绑定数据,wpf treeview数据绑定,详解TreeView绑定数据库
  • sql的多表查询,数据库如何实现多表查询
  • SQL数据库的图形管理界面工具是,sql图形界面创建数据库
  • SQL数据库的图形管理界面工具是,sql图形界面创建数据库,SQLServer2019 数据库的基本使用之图形化界面操作的实现
  • sql数据库定时备份怎么弄,mysql 定期备份
  • sql数据库定时备份怎么弄,mysql 定期备份,MySQL 数据库定时备份的几种方式(全面)
  • sqlserver的nvarchar和varchar,数据库varchar和nvarchar
  • sqlserver的nvarchar和varchar,数据库varchar和nvarchar,SQL中varchar和nvarchar的基本介绍及其区别
  • 留言与评论(共有 条评论)
       
    验证码: