展开全部

在 Python 语言环境下我们这样连接数据e5a48de588b662616964757a686964616f31333433653434库。

In [1]: from mysql import connector

In [2]: cnx = connector.connect(host="172.16.192.100",port=3306,user="appuser",password="xxxxxx")

但是连接数据库的背后发生了什么呢?

答案

当我们通过驱动程序(mysql-connector-python,pymysql)连接 MySQL 服务端的时候,就是把连接参数传递给驱动程序,驱动程序再根据参数会发起到 MySQL 服务端的 TCP 连接。当 TCP 连接建立之后驱动程序与服务端之间会按特定的格式和次序交换数据包,数据包的格式和发送次序由 MySQL 协议 规定。MySQL 协议:https://dev.mysql.com/doc/internals/en/client-server-protocol.html整个连接的过程中 MySQL 服务端与驱动程序之间,按如下的次序发送了这些包。

请点击输入图片描述

1. MySQL 服务端向客户端发送一个握手包,包里记录了 MySQL-Server 的版本,默认的授权插件,密码盐值(auth-data)。2. MySQL 客户端发出 ssl 连接请求包(如果有必要的话)。

3. MySQL 客户端发出握手包的响应包,这个包时记录了用户名,密码加密后的串,客户端属性,等等其它信息。

4. MySQL 服务端发出响应包,这个包里记录了登录是否成功,如果没有成功也会给出错误信息。

python怎么连接数据库并且查看数据是否存在_如何使用python连接数据库,插入并查询数据...相关推荐

  1. docker(7):使用python 连接数据库,插入并查询数据--link

    本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/53589604 未经博主允许不得转载. 博主地址是:http://blog.csd ...

  2. python数据科学手册_小白入门Python数据科学

    前言 本文讲解了从零开始学习Python数据科学的全过程,涵盖各种工具和方法 你将会学习到如何使用python做基本的数据分析 你还可以了解机器学习算法的原理和使用 说明 先说一段题外话.我是一名数据 ...

  3. python 数据科学书籍_您必须在2020年阅读的数据科学书籍

    python 数据科学书籍 "We're entering a new world in which data may be more important than software.&qu ...

  4. python删除数据库的数据完整代码_轻松掌握Python对数据库的增、删、改、查

    上节课我们讲解了Python操作数据库的一些基础内容,并带大家搭建了基础运行环境.安装了MySQL依赖包,并且我们还连接数据库做了查询操作. 如果没有学习上篇文章的同学建议回顾一下:全栈:Centos ...

  5. 用python处理excel数据做函数_如何使用python通过函数式编程完成excel中的数据处理及分析工作...

    Excel是数据分析中最常用的工具,本篇文章通过python与excel的功能对比介绍如何使用python通过函数式编程完成excel中的数据处理及分析工作.在Python中pandas库用于数据处理 ...

  6. python天天向上每十天休息一天_统计师的Python日记【第十天:数据聚合】

    回顾一下: 第1天学习了Python的基本页面.操作,以及几种主要的容器类型. 第2天学习了python的函数.循环和条件.类. 第3天了解了Numpy这个工具库. 第4.5两天掌握了Pandas这个 ...

  7. python随机数据随概率分布_概率分布及其Python实现

    一.学习概率分布有什么用?很多现实中的分布都来自几种概率分布.对个人生活和工作选择非常有帮助. 知道某件事发生的概率对我们作出数据分析决策很有帮助.有时候计算概率很简单,有时候计算概率很复杂,概率分布 ...

  8. adb查看手机cpu使用率_通过 adb 命令获取手机应用性能数据 (CPU、内存、流量)

    由于工作需要获取安卓手机游戏应用运行时的性能数据,上网学习了一些知识,整理记录下... 若有错误,欢迎指正:若有更好方法,感谢分享. 1. 获取CPU数据 命令:adb shell top -n -1 ...

  9. 以下用来处理python字典的方法中正确的是_以下关于Python的说法中正确的是哪一项?...

    [判断题]Python内置函数len____可以返回列表.元组.字典.集合.字符串以及range对象中元素个数. [判断题]Python内置函数max____用来返回序列中的最大元素. [判断题]Py ...

  10. excel数据透视表_来自多个工作表的Excel数据透视表更新

    excel数据透视表 If you have similar data on two or more worksheets, you might want to combine that data i ...

最新文章

  1. 【1024程序员节】都有什么?现场亲历者告诉你...
  2. Debian 7.1.0 安装教程图解(——Debian系统轻量级快速安装法)
  3. mimakatz用法_两步完成利用procdump64+mimikatz获取win用户密码
  4. python怎么判断输入的是不是数字_如何在PYTHON里判断字符串是否为数字
  5. mono for android mysql_mono for android 自定义titleBar Actionbar 顶部导航栏 修改 样式 学习...
  6. C/C++轻松实现文件下载
  7. 信息学奥赛一本通(1178:成绩排序)——选择排序
  8. mysql叶子结点存储的什么_B+树叶子结点到底存储了什么?
  9. SQL SERVER中的二种获得自增长ID的方法
  10. CDH(Cloudera)与hadoop(apache)对比
  11. MySQL主从同步(五)——排错思路
  12. linux怎么安装uwf命令,linux实题小练
  13. ICP经营许可证条件
  14. oracle中nowait怎么用,oracle中UPDATE nowait 的使用方法介绍
  15. java 线程resume_为什么java线程不推荐调用stop,suspend,resume方法
  16. android显示地图代码,Android Studio之高德地图实现定位和3D地图显示(示例代码)
  17. 手风琴页面html,滑动手风琴的制作(只涉及HTML+css)
  18. cisco思科实现MPLS 虚拟专用网
  19. 网络教育学位证计算机考试包括什么区别,远程网络教育学历和学位证书有什么区别...
  20. eclipse 根据wsdl文件生成Java文件 3种方式

热门文章

  1. 大屏监控系统实战(4)-如何将SpringBoot+Vue前后端分离项目一次打包为一个Jar包运行?
  2. 【Nginx】实现负载均衡的几种方式
  3. android 音频配置文件,Android音频系统
  4. 眼控科技 实习算法工程师面试
  5. 计算机如何自动屏幕保护,怎样设置屏保
  6. pycharm在linux安装插件,Pycharm安装go插件,开始go之旅
  7. 快速显示代码信息工具 Tokei
  8. Linux磁盘阵列技术详解(三)--raid 5和raid 10的创建 推荐
  9. windows服务与其他进程使用MemoryMappedFile
  10. Silverlight MMORPG网页游戏开发课程[一期] 第九课:HUD与背景音乐