Tag: MySQL


  1. MySQL 性能分析 之 联合索引(复合索引)实践分析

    作为开发者,大家都知道,一个服务器、一个数据库的性能是项目的重中之重,后台架构、写法与数据库设计的好坏往往直接影响到整个项目的性能。 索引:是当你的业务完成后,跟据查询条件来建立的。当你的数据量大(一般是10万条数据)了之后,我们会再把普通索引删除,使用自建索引表。因为数据量大的时候你要批量修改(索引表也会修改)会变的非常的慢! 这里给分析一下MySQL的索引;索引分:普通索引和联合索引,而索引的关键相信很多人也知道,用非主键字段进行查询的时候MySQL在查询的时候就是扫表行为,如果有索引…

    MySQL继续阅读

  2. Laravel 各版本- 原生SQL打印之SQL监听 --方法(二)

    在框架中使用封装后的各种数据库类,对于很多人来说就是一把双刃剑(使用很方便,但是错在哪除非用得很熟,不然还真不好调试);很早之前博主已经写过一篇关于如何在laravel中输出原生的SQL语句的方法1.使用debugbar插件(见Laravel debug bar 调试利器),2.使用局部SQL打印方法(见Laravel-小技巧 查询日志(sql语句打印)-方法(一)),3.使用事件监听器全局设置SQL原生态打印,前两篇丢丢哥已经写了,本篇就来完成这最后一种打印原生态SQL语句的方法. 本次…

    Laravel, MySQL继续阅读

  3. Laravel -- 小技巧 查询日志(sql语句打印) --方法(一)

    前言 : 用Laravel的时候不管是操作DB类还是操作ORM时,都会遇到sql报错,特别是一些复杂语句查询的时候,想要看到输出的sql语句到底是哪里出问题了。 默认情况下,Laravel日志保存在内存的所有查询运行当前的请求。然而,在某些情况下,例如当插入的行数,这可能会导致应用程序使用多余的内存。禁用日志,你可以使用disableQueryLog方法: DB::connection()->enableQueryLog(); // 获取已执行的查询数组 DB::table('d…

    Laravel, MySQL继续阅读

  4. MySQL 安装与安全优化

    Ubuntu 环境下 MySQL 安装与安全优化。 安装 sudo apt-get updatesudo apt-get install mysql-server mysql-client # 设置root密码 # 设置数据库目录 sudo mysql_install_db # 移除匿名帐户,禁用root远程登录 sudo mysql_secure_installation # 回答n,y,y,y,y 设置默认字符集 中文环境下,设置 utf8 为默认字符集,防止出现乱码。 $ sud…

    MySQL继续阅读

  5. 产品级搜索技术-全文本索引

    介绍 大部分技术员在处理搜索问题的时候,往往直接依赖数据库的查询功能,通过普通 SQL 语句的数值比较, 范围的过滤等就可以完成绝大多数我们需要的查询了, 但是如果你希望通过关键字的匹配来进行查询过滤, 那么就需要基于相似度的查询, 而不是原来的精确数值比较, 那么这种查询我们第一个想到的肯定是 LIKE 的 SQL 语句, 但是LIKE模糊查询它的工作原理是全表扫描, 如果数据量非常大, 那么会造成非常严重的卡顿, 也可能出现整个项目崩掉, 而全文索引的设计就是避免这种情况的发生 全文搜索…

    MySQL继续阅读