`
wwty
  • 浏览: 542961 次
  • 性别: Icon_minigender_1
  • 来自: 北京-郑州
社区版块
存档分类
最新评论

python下innodb的数据提交问题

阅读更多

mysql数据库存储引擎从isam转移到了innodb

今天出现一个奇怪的问题:
insert,delete,update时,数据总是不能入库

解决过程:
刚开始怀疑数据库配置参数有问题,但是得去验证,首先用dbutils的持久连接做了测试,发现不行,然后用真正的池连接做测试,还是不行

随后直接回到mysqldb上进行测试,还是不行;这样一来就开始怀疑数据库配置出问题了,但是为什么用mysql的客户端工具操作就ok呢?

所以感觉怀疑配置有问题,又感觉说不过去

于是用java写了个测试程序,竟然ok!

这样一来,就定位为python的数据库操作部分有问题

google的过程中,突然间发现一篇文章,里面有个哥们写了这样一句话:楼主应该用的是自动事物,并且是innodb

然后又看到一个哥们的回复说应该显式调用commit方法

于是按照执行,问题解决,再回想一下:innodb本来就是事物引擎,为每个表都分配的有插入,更新,删除的缓存,java当中是默认提交事物了

而python的mysqldb当中竟然没有处理!问题就在这里了

分享到:
评论

相关推荐

    py_innodb_page_info.zip

    3. **页分析工具**:`py_innodb_page_info`工具提供了查看InnoDB数据页内容的功能,包括页类型、页号、事务信息、记录列表等。这有助于数据库管理员和开发人员调试和优化数据库性能。 4. **页类型**:InnoDB的页有...

    py_innodb_page_info工具

    首先,`py_innodb_page_info`是一个Python库,它的主要功能是解析InnoDB的数据页和日志文件,帮助开发者获取有关MySQL数据库内部结构的详细信息。通过这个工具,我们可以查看InnoDB的页类型、页头信息、记录、B树...

    python 基础面试常见汇总

    MySQL提供了多种存储引擎,如MyISAM(默认,适合Web和数据仓储)、InnoDB(事务处理,支持ACID,行级锁)、BDB(事务引擎,类似InnoDB)、Memory(存储在内存中,快速访问)、Merge(合并多个MyISAM表)、Archive...

    Python实现监控MySQL性能指标

    为了实现上述性能指标的监控,可以通过编写 Python 脚本定期查询 MySQL 的状态变量来获取所需的数据,并进行计算和记录。具体步骤如下: 1. **安装必要的 Python 库**: 需要安装 `pymysql` 或 `mysql-connector-...

    基于python的信息加密解密网站源码数据库论文.doc

    3. 加密存储引擎:MySQL提供了一些支持透明加密的存储引擎,如`TokuDB`和`InnoDB`,它们可以在数据写入时自动加密,读取时解密。 三、网站平台的实现 1. 用户界面:网站前端应设计友好的用户界面,让用户能方便地...

    基于Python的智慧校园考试系统程序.zip

    系统运行在Linux操作系统环境下,如Ubuntu 16.04或CentOS等发行版,采用MySQL作为数据库管理系统,存储考试数据和用户信息,Python 3.5及以上版本作为后端开发语言,Django 2.1框架为应用提供了高效稳定的基础架构。...

    课题-Python-MySQLdb-学习总结.docx

    1. **事务支持**:如果使用支持事务的存储引擎(如 InnoDB),则需要显式地提交或回滚事务。使用 `commit()` 方法提交更改,使用 `rollback()` 方法撤销更改。注意一旦提交,就不能再回滚。 2. **性能优化**:在执行...

    python测试mysql写入性能完整实例

    InnoDB引擎支持事务处理和行级锁定,这在多用户并发环境下提供了更好的性能和数据一致性。 接下来,我们来看看三种不同的写入方式: 1. **普通写入**:这是最基础的写入方法,每次只插入一条记录。在Python中,...

    python统计MYSQL常用的一些性能参数指标.pdf

    这些数据对于监控和优化MySQL服务器的性能至关重要,可以帮助我们识别潜在的瓶颈,例如高查询负载、频繁的磁盘读写或低效的索引使用。 在实际应用中,可以将这些指标记录到日志文件或可视化工具中,以便进行长期...

    python爬虫面试宝典(常见问题)

    同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事 异步: 请求通过事件触发->服务器处理(这是浏览器仍然可以作其他事情)->处理完毕 链表和顺序表储存时各自有什么优点? 1.顺序表...

    Python写的一个简单监控系统

    - 主页路由`/`,处理POST和GET请求,用于数据提交和页面展示。 - 数据获取路由`/data`,仅处理GET请求,返回内存使用数据。 4. 应用运行配置,设置监听所有IP地址(0.0.0.0)的8888端口,开启调试模式。 在前端...

    Python3.6实现连接mysql或mariadb的方法分析

    `pymysql`库提供了丰富的API来支持这些操作,例如`cursor.execute(sql)`用于执行SQL,`cursor.fetchall()`获取所有查询结果,`cursor.fetchone()`获取单行数据,以及`cursor.execute(sql, params)`用于执行包含参数...

    适合初学者的python web网站,flask框架+jinja2模板+mysql让学习更简单,内容包括mysql的.zip

    5. **处理表单数据**:使用Flask-WTF扩展处理用户提交的表单数据,实现CRUD(创建、读取、更新、删除)操作。 6. **错误处理和日志记录**:设置错误页面,添加日志记录功能,提升应用的健壮性。 通过这个学习资源,...

    Python操作MySQL数据库的方法

    MySQL支持多种存储引擎,包括InnoDB(默认,支持事务处理和外键)、MyISAM(快速读取,不支持事务)、Memory(数据存储在内存中,重启后丢失)和CSV等。选择合适的存储引擎取决于应用需求,如是否需要事务支持、...

    MySQL_5.6.22_win32_XiaZaiBa

    在备份和恢复方面,MySQL 5.6.22增强了InnoDB的在线备份功能,允许在不中断服务的情况下进行数据备份。这降低了计划外停机时间,对于业务连续性至关重要。 此外,MySQL 5.6.22还对SQL标准的兼容性进行了升级,包括...

    使用Python操作MySQL的一些基本方法

    执行SQL语句后,必须调用`commit()`方法来提交事务,确保数据的持久化。 向表中添加数据通常涉及`execute()`方法。可以使用两种方式: 1. 直接在SQL语句中写入值: ```python cur.execute("insert into stu_info ...

    使用Python操作MySQL的小技巧

    在Python中,使用pymysql库,可以在提交事务(`commit()`)前调用`insert_id()`方法来获取新插入行的主键ID。例如: ```python import pymysql database = pymysql.connect( host="127.0.0.1", port=3306, ...

    mysqlclient-2.0.3 (1).tar_mysqlclient_源码.zip

    3. **事务处理**:支持开始、提交和回滚事务,确保数据的一致性和完整性。 4. **参数化查询**:使用占位符防止SQL注入攻击,例如`%s`作为参数占位符。 5. **编码与解码**:处理字符编码问题,支持Unicode字符集,...

Global site tag (gtag.js) - Google Analytics