当前位置: 首页 >  最新文章 >  数据库 最新文章

  • 通过shell脚本为mongodb建立索引
    通过shell脚本为mongodb建立索引
  • MySQL 在并发场景下的问题及解决思路
    对于数据库系统来说在多用户并发条件下提高并发性的同时又要保证数据的一致性一直是数据库系统追求的目标,既要满足大量并发访问的需求又必须保证在此条件下数据的安全,为了满足这一目标大多数数据库通过锁和事务机制来实现,MySQL数据库也不例外。尽管如此我们仍然会在业务开发过程中遇到各种各样的疑难问题,本文将以案例的方式演示常见的并发问题并分析解决思路。
  • 如何对分布式 NewSQL 数据库 TiDB 进行性能调优
    分布式系统中调优比单节点服务器调优复杂得多,它的瓶颈可能出现在任何地方,单个节点上的系统资源,子组件,或者节点间的协作,甚至网络带宽这些都可能成为瓶颈。性能调优就是发现并解决这些瓶颈的实践,直到系统达到最佳性能水平。
  • SQL 入门
    使用 SQL 构建一个关系数据库比你想的更容易。
  • 记一次SQL注入实战
    刚发现漏洞时,我就已经成功实现了注入,因为怕发到网上后被玩坏,一直没有发布。今天去看了看,原网页已经无法访问了,现在发出来应该就没有什么大问题了。
  • SQL调优--表统计信息未及时更新导致查询超级慢
    默认情况下,查询优化器已根据需要更新统计信息以改进查询计划;但在某些情况下,你可以通过使用 UPDATE STATISTICS 或存储过程 sp_updatestats 来比默认更新更频繁地更新统计信息,提高查询性能。
  • 为什么忘记commit也会造成select查询的性能问题
    今天遇到一个很有意思的问题,一个开发人员反馈在测试服务器ORACLE数据库执行的一条简单SQL语句非常缓慢,他写的一个SQL没有返回任何数据,但是耗费了几分钟的时间。让我检查分析一下原因,分析解决过后,发现事情的真相有点让人哭笑不得,但是也是非常有意思的。我们先简单构造一下类似的案例,当然只是简单模拟。
  • SQL调优日记:并行等待的原理和问题排查
    什么是CXPAKET 等待呢。 当数据库引擎分析查询的开销超过设定的阈值时,SQL SERVER会选择并行执行。数据库引擎会为这个请求创建多个任务。每个任务处理数据的一个子集。每个任务可以在一个分开的CPU/核上执行。请求主要使用生产-消费 队列跟这些任务交互。
  • 一个20秒SQL慢查询优化的经历与处理方案
    前几天在项目上线过程中,发现有一个页面无法正确获取数据,经排查原来是接口调用超时,而最后发现是因为SQL查询长达到20多秒而导致了问题的发生。
  • 优化SQL查询:如何写出高性能SQL语句
    执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条记录,那查询优化器会选择“索引查找”方式,如果该表进行了归档,当前只剩下5000条记录了,那查询优化器就会改变方案,采用 “全表扫描”方式。
  • PouchDB:一个开源的 JS 数据库
    PouchDB 是一个受 Apache CouchDB 启发的开源 JavaScript 数据库,可以完美运行在浏览器中。设计初衷是,帮助Web开发者构建能在本地离线运行的App,一如在线时运行的一样。
  • 把 SQL Server 迁移到 Linux?不如换成 MySQL
    最近几年,数量庞大的个人和组织放弃 Windows 平台选择 Linux 平台,而且随着人们体验到更多 Linux 的发展,这个数字将会继续增长。
  • 写出易调试的 SQL
    相比高级语言的调试,调试SQL是件痛苦的事。特别是那些上千行的存储过程,更是我等码农的噩梦。 在将上千行存储过程的SQL 分解到 C# 管理后,也存在调试的不通畅,如何让调试流畅些呢,请看后续。
  • SQL 注入详解扫盲
    本文并不是什么很深入的技术文章,带领大家学习 SQL 注入的基本知识。
  • 为什么说 LINQ 要胜过 SQL
    如果你还没有沉溺于 LINQ,就会想这有啥大惊小怪的。SQL 并没有坏掉,为什么还要对它进行修补呢? 为什么我们还需要另外一种查询语言呢?
  • NoSQL 数据库的主主备份
    Tarantool DBMS 的高性能应该很多人都听说过,包括其丰富的工具套件和某些特定功能。比如,它拥有一个非常强大的 on-disk 存储引擎 Vinyl,并且知道怎样处理 JSON 文档。然而,大部分文章往往忽略了一个关键点:通常 Tarantool 仅仅被视为存储器,而实际上其最大特点是能够在存储器内部写代码,从而高效处理数据。
  • 数据库表设计,没有最好只有最适合
    我们在设计数据库的时候,是否会突破常规,找到最适合自己需求的设计方案,下面来举个例子
  • 不再迷惑,无值和 NULL 值
    在关系型数据库的世界中,无值和NULL值的区别是什么?一直被这个问题困扰着,甚至在写TSQL脚本时,心有戚戚焉,害怕因为自己的一知半解,挖了坑,贻害后来人,于是,本着上下求索,不达通幽不罢休的决心(开个玩笑),遂有此文。
  • 数据结构中各种树
    数据结构中有很多树的结构,其中包括二叉树、二叉搜索树、2-3树、红黑树等等。本文中对数据结构中常见的几种树的概念和用途进行了汇总,不求严格精准,但求简单易懂。
  • LevelDB 实现分析
    LevelDB 是由 Google 开发的 key-value 非关系型数据库存储系统,是基于 LSM(Log-Structured-Merge Tree) 的典型实现,LSM 的原理是:当读写数据库时,首先纪录读写操作到 Op log 文件中,然后再操作内存数据库,当达到 checkpoint 时,则写入磁盘,同时删除相应的 Op log 文件,后续重新生成新的内存文件和 Op log 文件。