`
glutinit
  • 浏览: 47341 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

MY SQL insert 速度过慢

阅读更多
最近在用MySQL做存储,测试中发现插入数据太慢了,插入速度只有20-30 条/秒,后来查资料后,将MySQL的1个参数:innodb_flush_log_at_trx_commit,1改为了0(修改方法,可以直接修改my.ini(windows)/my.cnf(linux)中的对应参数,似乎用命令直接设置没有效果),插入速度就提升到了3000+每S,MySQL的文档中,对这个参数的描述如下:
If the value of innodb_flush_log_at_trx_commit is 0, the log buffer is written out to the log file once per second and the flush to disk operation is performed on the log file, but nothing is done at a transaction commit. When the value is 1 (the default), the log buffer is written out to the log file at each transaction commit and the flush to disk operation is performed on the log file. When the value is 2, the log buffer is written out to the file at each commit, but the flush to disk operation is not performed on it. However, the flushing on the log file takes place once per second also when the value is 2. Note that the once-per-second flushing is not 100% guaranteed to happen every second, due to process scheduling issues.

这样,如果transaction commit的频率非常高,1秒钟内会进行很多次的话,可以考虑将其设置为0,但这样就要承担数据库Crash后,1秒内未存储到数据库数据丢失可能的风险

分享到:
评论

相关推荐

    如何查询mysql中执行效率低的sql语句[借鉴].pdf

    1. **慢查询日志**:MySQL提供了慢查询日志功能,通过在`my.cnf`或`my.ini`配置文件中添加`--log-slow-queries`选项,可以记录所有执行时间超过设定阈值的SQL语句。这有助于识别和分析导致性能问题的SQL。 2. **...

    mysql慢日志查询

    慢查询日志是MySQL中非常有用的工具之一,通过它不仅可以找出性能问题所在,还可以进一步对数据库进行优化,提高系统的响应速度和稳定性。理解并正确配置慢查询日志,对于维护高负载的数据库系统来说至关重要。

    MySQL慢查询日志

    MySQL慢查询日志是一种重要的工具,用于记录执行时间超过预设阈值的SQL语句。通过对这些记录进行分析,可以找出数据库中的性能瓶颈,并据此采取相应的优化措施。 #### 二、慢查询日志的作用 1. **性能调优**:帮助...

    mysql数据库my.cnf配置文件

    # 注:这两个参数不支持动态改变,需要把该参数加入到my.cnf里,修改完后重启MySQL服务,允许值的范围从 1-64 innodb_thread_concurrency = 0 # 默认设置为 0,表示不限制并发数,这里推荐设置为0,更好去发挥CPU多核...

    MySQL慢查询日志.docx

    在Windows系统中,配置文件通常是`my.ini`,而在Linux系统中则是`my.cnf`。以下是在这两个文件中开启慢查询日志的示例配置: ```ini [mysqld] slow-query-log=1 # 开启慢查询日志 slow_query_log_file="/var/log/...

    my.cnf-调优

    - **wait_timeout**: 客户端无活动操作超时时间,过短会导致频繁断开连接,过长会占用更多资源。 - **max_connect_errors**: 连接失败最大次数,达到后客户端将被禁止一段时间。 - **table_cache/table_open_cache**...

    远程连接mysql数据库注意点记录

    本文将深入探讨在远程连接MySQL数据库时需要注意的关键点,包括新建独立账户、设置权限以及解决远程连接速度慢的问题。 首先,让我们来看如何新建独立账号并设置权限。在MySQL中,创建新用户通常需要使用命令行...

    MySQL高级MySQL高级

    4. **慢查询日志**:记录执行时间过长的查询,便于识别和优化。 5. **数据库设计**:遵循第三范式,减少冗余数据,避免数据不一致。 在“my-sql-advanced-master”这个压缩包中,很可能包含了一些关于上述高级...

    MySQL笔记 mysql

    - **性能日志**:如慢查询日志,记录执行时间过长的查询。 - **性能分析工具**:如InnoDB Monitor、SHOW STATUS和SHOW VARIABLES等。 以上只是MySQL笔记中的部分核心知识点,实际笔记内容可能还包括备份恢复、分区...

    mysql数据库远程管理软件sqlyog基础使用教程

    建议使用英文版本,因为中文版可能存在反应速度慢或稳定性问题。启动软件后,会有一个提示框询问是否对其他产品感兴趣,选择"Thank you, but I am not interested in either of the above-mentioned products, Just ...

    计算机软件-编程源码-MYSQL中文手册完全版.zip

    慢查询日志记录执行时间过长的查询,帮助找出性能瓶颈。使用性能监视工具如Percona Toolkit或MySQL Workbench进行深入分析。 十二、复制与集群 MySQL复制允许数据在多个服务器之间同步,提高可用性和负载均衡。主从...

    mysql.rar_MYSQL

    -慢查询日志:记录执行时间过长的查询,便于找出性能瓶颈。 - 查询缓存:存储已执行过的查询结果,避免重复计算。 8. 安全性: - 用户权限管理:通过GRANT和REVOKE控制用户对数据库的访问权限。 - 加密:支持...

    20道经典MySQL面试题

    慢查询是指执行时间过长的SQL语句,可以通过启用慢查询日志来监控和优化这些语句。 【查看服务器状态】 使用`SHOW STATUS;`或`SHOW VARIABLES;`可以查看MySQL服务器的状态和配置信息。 【主键】 主键是表中能唯一...

    mysql的系统学习和优化.zip

    3. **SQL语句**:熟练掌握SELECT、INSERT、UPDATE、DELETE基本操作,以及JOIN、GROUP BY、HAVING、ORDER BY等高级查询技巧。学会使用子查询和联接查询处理复杂的数据操作。 4. **事务处理**:理解ACID(原子性、...

    MySQL笔试面试题大全

    12. **SQL语句**:熟练掌握各种SQL语句,包括但不限于`SELECT`、`INSERT`、`UPDATE`、`DELETE`等,以及更复杂的子查询、联表查询等。 ### 性能调优 13. **MySQL调优**:涉及到多个层面,包括但不限于硬件调优、...

    phpmyadmin上传Webshell总结.docx

    (2)解决`system()`函数报错:如果遇到因安全限制导致的错误,可能需要寻找其他执行命令的函数,如`LOAD_FILE()`,或者寻找更复杂的绕过策略。 3. **解决`secure_file_priv`值不为空** 如果`secure_file_priv`...

    MySQL启用慢查询日志记录方法

    慢查询日志不仅包含SELECT语句,也包括执行时间超时的INSERT、UPDATE、DELETE和CALL等操作。为了进一步分析这些慢查询,可以使用`EXPLAIN`关键字来查看查询的执行计划。例如: ```sql EXPLAIN SELECT * FROM admin ...

    mysql使用说明

    - **使用慢查询日志**:通过配置慢查询日志,记录执行时间过长的SQL语句,以便后续分析。 - **定期备份与恢复**:定期备份数据库,并测试恢复过程,确保数据的安全性和可用性。 以上就是基于给定信息所总结的MySQL...

Global site tag (gtag.js) - Google Analytics