iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >python 长连接 mysql数据库
  • 804
分享到

python 长连接 mysql数据库

数据库pythonmysql 2023-01-31 06:01:27 804人浏览 泡泡鱼
摘要

python 长连接数据库Python链接Mysql中没有长链接的概念,但我们可以利用mysql的ping机制,来实现长链接功能思路:1 python mysql 的cping 函数会校验链接的可用性,如果连接不可用将会产生异常2 利用这一


python 长连接数据库

Python链接Mysql中没有长链接的概念,但我们可以利用mysql的ping机制,来实现长链接功能


思路:

1 python mysql 的cping 函数会校验链接的可用性,如果连接不可用将会产生异常

2 利用这一特性,构造一个连接丢失的循环,不断尝试连接数据库,直到连接恢复

3 使用这样的机制不需要关闭数据库功能,对于驻留进程,有大量数据进行写操作时,很有用途

#!/usr/bin/env python  
# -*-coding:UTF-8-*-  
import MySQLdb 

class mysql:  
    def __init__ (self,  
                  host   = '',  
                  user   = '',  
                  passwd = '',  
                  db     = '',  
                  port   = 3306,  
                  charset= 'utf8'  
                  ):  
        self.host   = host  
        self.user   = user  
        self.passwd = passwd  
        self.db     = db  
        self.port   = port  
        self.charset= charset  
        self.conn   = None  
        self._conn()  
  
    def _conn (self):  
        try:  
            self.conn = MySQLdb.Connection(self.host, self.user, self.passwd, self.db, self.port , self.charset)  
            return True  
        except :  
            return False  
  
    def _reConn (self,num = 28800,stime = 3): #重试连接总次数为1天,这里根据实际情况自己设置,如果服务器宕机1天都没发现就......  
        _number = 0  
        _status = True  
        while _status and _number <= num:  
            try:  
                self.conn.ping()       #cping 校验连接是否异常  
                _status = False  
            except:  
                if self._conn()==True: #重新连接,成功退出  
                    _status = False  
                    break  
                _number +=1  
                time.sleep(stime)      #连接不成功,休眠3秒钟,继续循环,知道成功或重试次数结束  
  
    
    def select (self, sql = ''):  
        try:  
            self._reConn()  
            self.cursor = self.conn.cursor(MySQLdb.cursors.DictCursor)  
            self.cursor.execute (sql)  
            result = self.cursor.fetchall()  
            self.cursor.close ()  
            return result  
        except MySQLdb.Error,e:  
            #print "Error %d: %s" % (e.args[0], e.args[1])  
            return False  
            
    def handle (self, sql = ''):  
        try:  
          self._reConn()  
          self.cursor = self.conn.cursor(MySQLdb.cursors.DictCursor)  
          self.cursor.execute ("set names utf8") #utf8 字符集  
          self.cursor.execute (sql)  
          self.conn.commit()  
          self.cursor.close ()  
          return True  
        except MySQLdb.Error, e:  
          print "Error %d: %s" % (e.args[0], e.args[1])
          return False
  
    def close (self):  
        self.conn.close()  
  
if __name__=='__main__':  
    my = mysql('localhost','user','passwd','test',3306)  
    my.handle('create table test(id int,name varchar(10))default charset=utf8')
    my.handle('insert into test values(1,"tom")')
    print my.select('select * from test')  
    
    #my.close()


您可能感兴趣的文档:

--结束END--

本文标题: python 长连接 mysql数据库

本文链接: https://www.lsjlt.com/news/190104.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python 长连接 mysql数据库
    python 长连接数据库python链接mysql中没有长链接的概念,但我们可以利用mysql的ping机制,来实现长链接功能思路:1 python mysql 的cping 函数会校验链接的可用性,如果连接不可用将会产生异常2 利用这一...
    99+
    2023-01-31
    数据库 python mysql
  • python连接MySQL数据库
    模块功能:connect()方法 * connect()方法用于连接数据库,返回一个数据库连接对象。如果要连接一个位于host.remote.com服务器上名为fourm的MySQL数据库,连接串可以这样写: ...
    99+
    2023-01-31
    数据库 python MySQL
  • Python 连接 MySQL 数据库
    在实际数据分析和建模过程中,我们通常需要从数据库中读取数据,并将其转化为 Pandas dataframe 对象进行进一步处理。而 MySQL 数据库是最常用的关系型数据库之一,因此在 Python 中如何连接 MySQL 数据库并查询数据...
    99+
    2023-08-16
    python
  • Python连接MySQL数据库(mys
    本文介绍的库是mysql-connector-python,它是MySQL的Python驱动,使用它你可以连接MySQL数据库,访问、操作表和数据。MySQL的Python驱动也不少,但是mysql-connector-python是最流行...
    99+
    2023-01-31
    数据库 Python MySQL
  • python怎么连接mysql数据库
    这篇文章给大家分享的是有关python怎么连接mysql数据库的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。python怎么连接mysql数据库MySQLdb 模块不支持 Pyt...
    99+
    2024-04-02
  • Python 连接mysql数据库进行操
    1.MySQLdb 模块是用于Python链接Mysql数据库的接口,默认是没有安装的[root@python ~]# yum  install  MySQL-python   -y2.创建python脚本[root@python ~]# ...
    99+
    2023-01-31
    数据库 Python mysql
  • 使用python连接mysql数据库数据方式
    目录1.fetchone/fetchmany/fetchall2.pandas.read_sql()前言: 使用python连接mysql数据库数据 有以下两种读取数据的方式推荐: ...
    99+
    2024-04-02
  • python3连接MySQL数据库
    环境:python 3.6.1 + mysql 5.1 Python3 支持用 pymysql 模块来链接数据库 1、pymysql安装 windows下:pip install pymysql 直接安装 官方文档:http://...
    99+
    2023-01-31
    数据库 MySQL
  • Java连接mysql数据库
    文章目录 一、Java连接mysql数据库1.1 流程1.2 一个测试连接的java程序 二、优化:创建一个工具类2.1 存在的问题2.2 创建配置文件和工具类2.3 测试使用工具类进行CRUD操作 三、SQL注入问题3.1...
    99+
    2023-08-16
    数据库 mysql java jdbc sql注入
  • idea连接MySQL数据库
    文章目录 前言一、idea创建连接MySQL操作步骤 二、配置连接参数操作步骤 总结 前言 提示:idea连接数据库前,先需要查看自己数据库安装、配置是否完成: 1.打开mysql命令控制台 2.输入密码,到如下页面...
    99+
    2023-08-17
    mysql intellij-idea 数据库
  • Node.js 连接 mysql 数据库
    目录 一、安装驱动 二、连接数据库 1、数据库连接的配置信息 数据库连接参数说明 2、封装 mysql 的执行语句 3、后端路由文件  三、数据库操作( CURD ) 1、查询数据 2、插入数据 3、更新数据 4、删除数据 4、获取受影响的...
    99+
    2023-09-09
    mysql 数据库 node.js
  • C#连接MySQL数据库
    目录 一、引用MySql.Data.dll文件 二、连接、关闭数据库 三、数据库增删改查 附:完整代码 一、引用MySql.Data.dll文件 创建C#窗体应用程序,解决方案资源管理器中找到“引用”,右键,选择添加引用。 在MyS...
    99+
    2023-10-28
    c# 数据库 mysql
  • c++ 连接mysql数据库
            使用vs2019对window11中的数据库进行连接 1. 配置连接环境         首先需要把mysql中的头文件和库文件放入到c++项目工程中 打开安装MySQL的目录,在windows系统中如果是默认路径,应该和我...
    99+
    2023-09-03
    数据库
  • C# 连接 MySQL 数据库
    目录 一、需求 二、新建 C# 项目 三、MySQL数据库 四、MySqlHelper 五、测试 一、需求 C# 使用 MySQL 数据库的情况还是比较少的,大部分使用 Windows 平台一般使用 SQL Server,在两年前我...
    99+
    2023-09-02
    c# 数据库
  • JSP连接MySQL数据库
    ✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:JAVA开发者成长之路 ✨...
    99+
    2023-08-16
    java mysql tomcat
  • 怎么在python中连接mysql数据库
    这期内容当中小编将会给大家带来有关怎么在python中连接mysql数据库,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;...
    99+
    2023-06-14
  • python怎么连接数据库_python连接数据库教程
    1、首先python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库:。 2、然后可以访问Python数据库接口及API查看详细的支持数据库列表。不同的数据库你需要下载不同...
    99+
    2024-04-02
  • Python 连接 Oracle数据库
    1.环境设置[root@oracle ~]# cat /etc/redhat-release CentOS release 6.9 (Final)[root@oracle ~]# python -VPython 2.6.6版本:Oracle...
    99+
    2023-01-31
    数据库 Python Oracle
  • python连接postgresql数据库
    python连接postgresql数据库 postgresql是常用的关系型数据库,并且postgresql目前还保持着全部开源的状态,所以我们今天就一起来学习一下,如何用python连接postg...
    99+
    2023-09-04
    数据库 postgresql python
  • Python 连接Access数据库
       对于access数据库连接的时候,原想没那么难。可是不断的报错。      win32com odbc 都已经试过啦,还是不行,    最后通过该链接:http://en.wikibooks.org/wiki/Python_Prog...
    99+
    2023-01-31
    数据库 Python Access
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作