MYSQL
文章平均质量分 91
宁小法
trim(me);
路一步一步走,事一件一件办。
展开
-
2021-09-02 - MySQL 导出和导入SQL文件
主要用于快速稳定地导入数据到数据库中.原创 2021-09-02 18:00:33 · 281 阅读 · 0 评论 -
2021-03-23 - 高性能 MySQL 实战
1.应用场景主要用于学习实践高性能 MySQL. 2.学习/操作 1.文档阅读 https://laravelacademy.org/books/high-performance-mysql //高性能 MySQL 实战 2.整理输出 TBD 后续补充 ... 3.问题/补充 TBD 4.参考https://laravelacademy.org/books/h...原创 2021-03-23 12:24:18 · 323 阅读 · 0 评论 -
MySQL 8.0 - Docker安装 - Win10 - 学习/实践
主要用于快速高效地配置MySQL数据库开发/测试环境. 帮助开发/测试项目原创 2021-01-17 09:48:00 · 1131 阅读 · 0 评论 -
数据结构与算法 - MySQL - 索引底层实现 - B+树/Hash
主要学习MySQL索引底层实现,数据结构与算法, 同时了解B+树/Hash索引的区别与优缺点以及各自的应用场景原创 2020-09-08 11:07:25 · 1438 阅读 · 0 评论 -
MySQL - 存储过程 [Stored Procedure] - 学习/实践
主要学习存储过程,及其优缺点,明白为什么有公司使用,有公司不适用.在日常学习/实践中,可以使用存储过程进行数据的读写练习等.反而效率更高.原创 2020-08-21 16:03:43 · 2318 阅读 · 0 评论 -
MySQL - 索引失效的情况有哪些?[汇总篇] - 以及合理使用建议
主要学习掌握MySQL索引的使用场景以及使用条件限制.帮助我们高效使用索引进行开发,开发高性能高可用程序.原创 2020-08-20 17:24:38 · 3454 阅读 · 0 评论 -
MySQL - redolog 与 binlog 是怎么保证数据不丢的? - 学习/实践
1.应用场景 主要用于保证数据的可靠性. 只要 redo log 和 binlog 保证持久化到磁盘,就能确保 MySQL 异常重启后,数据可以恢复. 2.学习/操作 TBD 后续补充 ... 3.问题/补充 TBD 4.参考 https://time.geekbang.org/column/article/76161 //23 | MySQL是怎么保证数据不丢的? https://ti..原创 2020-08-19 22:13:38 · 2253 阅读 · 1 评论 -
MySQL 8.0 - 安装[含Docker安装] - Win10/Mac
搭建开发环境,快速安装MySQL,然后进行相关的学习,测试,开发。原创 2020-03-27 18:25:57 · 4032 阅读 · 0 评论 -
【性能优化】MySQL - 单表数据量过千万,采坑优化记录 - 参考
主要用于如何解决单表大数据量问题,提供一个解决思路。原创 2020-01-19 16:15:37 · 6913 阅读 · 0 评论 -
MySQL 索引 - 为什么用了索引,查询还是慢?
1.应用场景 深入了解慢查询, 与索引的关系, 帮助开发高质量程序. 2.学习/操作 2.1 资料阅读 来源:rrd.me/f9jAG 经常有同学问我,我的一个SQL语句使用了索引,为什么还是会进入到慢查询之中呢?今天我们就从这个问题开始来聊一聊索引和慢查询。 另外插入一个题外话...原创 2020-01-18 23:03:08 · 6581 阅读 · 2 评论 -
SQL 错误用法 - 收集
1.应该场景清楚低效的SQL, 写出高效的SQL. 提升系统性能. 2.学习/操作 1、LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。这样条件排序都能有效的利用到索引,性能迅速提升。 SELECT *...原创 2019-12-12 19:51:24 · 3837 阅读 · 0 评论 -
MySQL - 修改数据库名称
1.应用场景修改数据库名字.同时保证数据不丢失. 2.学习/操作 如果是MyISAM存储引擎那么可以直接去到数据库目录mv就可以。//只要修改DATA目录下面的那个库名的文件夹的名字即可. 如果是Innodb完全不行,会提示相关表不存在。 第一种方法: //5.1.7到5.1.23版本可用, 官方不推荐,会有丢失数据的危险[如果没有数据或者数据不重要,未...原创 2019-12-09 15:27:00 · 5958 阅读 · 0 评论 -
MySQL - SQL窗口函数
1.应用场景 窗口函数解决的问题包括:1)排名问题2)top N问题 应用工作中, 面试中. 2.学习/操作 //注意,mysql版本8已至此窗口函数这个功能, 如果低于该版本, 会出现SQL报错! 一.窗口函数有什么用? 在日常工作中,经常会遇到需要在每组内排名,比如下面的业务需求: 排名问题:每个部门按业绩来排...原创 2019-11-25 13:08:19 · 10357 阅读 · 15 评论 -
SQL注入与检测
1.应用场景安全攻防.帮助更加深入理解SQL注入的原理/操作/安全防护 2.学习/参考 1.注入 1.1首先我们需要搭建 sqli-labs 注入环境,在这个项目中,我们会面临 75 个 SQL 注入的挑战,你可以像游戏闯关一样对 SQL 注入的原理进行学习。 GitHub:https://github.com/audi-1/sqli-labs ...原创 2019-11-21 16:58:20 · 4213 阅读 · 0 评论 -
MySQL - 学习/实践 - 多多翻阅补充
1.应用场景学习, 实践MySQL. 2.学习/操作 1.官方手册 //推荐, 解决问题以及验证结论 最终还是回到官方手册. https://dev.mysql.com/doc/refman/5.5/en/data-size.html //5.5手册 https://dev.mysql.com/doc/refman/8.0/en/create-index.h...原创 2019-11-21 13:46:00 · 4038 阅读 · 0 评论 -
MySQL - 分库/分表 - 学习/实践
数据库成为响应瓶颈,需要做优化处理,以及当数据存储量很大时,可以采用的方案.原创 2019-11-07 12:26:55 · 3876 阅读 · 0 评论 -
07丨什么是SQL函数?为什么使用SQL函数可能会带来问题?
更多详情:https://blog.csdn.net/william_n/article/details/1001756451.学习简记 1,函数在计算机语言的使用中贯穿始终,在 SQL 中我们也可以使用函数对检索出来的数据进行函数操作,比如求某列数据的平均值,或者求字符串的长度等。 2.从函数定义的角度出发,我们可以将函数分成内置函数和自定义函数。 在 ...原创 2019-10-16 17:34:19 · 4049 阅读 · 0 评论 -
MySQL数据表储存特殊字符
1.应用场景有时, 需要向数据库中保存一些特殊字符,需要先进行特殊处理,如转义处理等,避免数据保存出错。 2.学习/操作 环境: MySQL/MariaDB 具体版本号没记住,也是较新的版本 2.1.向数据表中插入如下数据 insert into mc_common_info (`path`,`version_id`,`value`,`upd...原创 2019-09-09 10:41:04 · 5961 阅读 · 0 评论 -
MySQL 索引 - 学习/实践
1.介绍[多读两遍有好处] 引用:http://blog.codinglabs.org/articles/theory-of-mysql-index.html MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。 我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询...原创 2019-09-14 14:32:43 · 4029 阅读 · 1 评论 -
MySQL - 常用函数收集
主要用于了解和学习MySQL的常用函数,能尽快帮助解决开发中遇到的问题。原创 2019-09-14 14:34:39 · 4259 阅读 · 0 评论 -
MySQL - 常记不住的点汇总
有些重要知识点[可能是记忆性信息],记住就能快速解决问题,提高工作效率。原创 2019-09-14 14:36:24 · 3956 阅读 · 0 评论 -
WAMP/WNMP单独安装
1.应用场景搭建开发环境,同时为了更加的灵活和安全 2.环境【包含优缺点】 操作系统: Windows 10 64位 专业版 3.步骤TBD 4.问题TBD 4.参考【天下文章一大抄】,可是能灵活应用起来也是好的 https://blog.csdn.net/qq15577969/article/details/87203171 htt...原创 2019-09-26 10:22:41 · 4122 阅读 · 0 评论 -
MySQL - 数据库设计遵循的规则 - 学习/实践
1.应用场景 设计/重构数据库[数据表] 2.学习/操作 数据库的3大范式和5大约束 数据库的三大特性:实体,属性,关系 实体:表; 属性:表中的数据(字段); 关系:表与表之间的关系; 数据库设计三大范式(重点): 第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列...原创 2019-04-21 00:56:26 · 5115 阅读 · 0 评论 -
MySQL排序时, ORDER BY将空值NULL放在最后
1.应用场景从小到大升序排列时,null会出现在最前方,现在要将其放在后面 2.解决办法 方式一 : SELECT * FROM test ORDER BY num IS NULL , num; 方式二: select * from test order by if(isnull(num),1,0), num desc; 1.将nul...原创 2019-09-03 13:12:36 · 29583 阅读 · 3 评论 -
MySQL - 如何使用SQL语句交换男女性别
经常出现面试题目中, 面试官要求使用一行SQL来完成这个操作.从而来检查掌握SQL的程度原创 2019-04-20 20:51:37 · 12573 阅读 · 0 评论 -
MySQL 面试 - 收集
1.面试题 互联网公司面试必问的MySQL题目(上) 介绍:MySQL是一个关系型数据库管理系统,目前属于Oracle旗下产品。虽然单机性能比不上oracle,但免费开源,单机成本低且借助于分布式集群所以受到互联网公司的青睐,是互联网公司的主流数据库。 01 什么是数据库事务?如果没有事物会有什么后果?事务的特性是什么? 事务是指作为单个逻...原创 2019-03-17 10:30:22 · 3781 阅读 · 0 评论 -
MySQL - 各版本的区别
1.应用场景了解各个版本之间的区别,从而选择我们需要的版本. 2.学习/操作 官网下载地址:http://www.mysql.com/downloads/ 2.1 选择的版本 1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。 2. MySQL Enterprise Edition 企业版本,需付费,可...原创 2019-03-10 23:35:27 · 9881 阅读 · 0 评论 -
MySQL - tinyint(1)和int(1) 和 varchar(50)中数字的含义
1.应用场景设计/修改数据表结构时,需要考虑和合理选择字段类型和长度。 2.学习/操作 总结: 1.规定类型之后,存储是定长的,int(1)和int(4)从本身长度还是存储方式上都是一样的。mysql里,int(1)和int(4)的区别就是显示的长度,但是要设置一个参数:如果列制定了zerofill 就会用0填充显示,如2 int(3)指定后就会显示为002 ...原创 2019-04-21 00:50:20 · 13450 阅读 · 1 评论 -
MySQL 日期数据类型 - date, datetime, timestamp区别及相互转换
1.介绍数据库时间日期常见存储类型,取出三者后,到后端或者前端均是字符串类型【其实在数据表中存储也是字符类型,不过是有固定格式约束的字符罢了】, 也均可以使用int类型存储,使用代码二次转换【TBD】 2.应用场景 存储数据到数据表时,选定字段类型, 如何选取合适的时间类型是必要的,已经时间类型确定,需要转换为合适的字段类型也是在所难免。 如: 设计数据表时, 设...原创 2019-04-21 00:54:51 · 54197 阅读 · 0 评论 -
MySQL中count(*)/count(1)/count(字段) 以及 distinct的使用方法和效率研究
1.应用场景能适合场景地使用更加合适搞高效的sql 2.学习/操作 暂先参见http://kimi.it/156.html 并可查看mysql手册-->索引-->COUNT(DISTINCT) 3.问题TBD 4.参考http://kimi.it/156.html 后续补充......原创 2019-05-22 12:58:58 · 6812 阅读 · 0 评论 -
MySQL - 操作汇总「含那些踩过的坑儿」
主要用于学习和记录相关MySQL的操作,便于快速搜索查询~原创 2019-01-22 20:42:57 · 3991 阅读 · 0 评论 -
MySQL - 预处理语句及绑定参数 - 学习/实践
占坑 /TBD参考 https://blog.csdn.net/qq_39703644/article/details/76955650 http://www.sxt.cn/php/php-mysql-prepared-statements.html 后续补充...原创 2019-01-14 13:39:46 · 4718 阅读 · 0 评论 -
MySQL - 那些遇到的坑儿 - 收集
收集记录曾经遇到的坑儿,学习思考,避免再遇到,或者很快解决。原创 2019-04-21 20:13:04 · 4072 阅读 · 0 评论 -
MySQL - SQL语句增加字段/修改字段/修改类型/修改默认值
有时[比如在Linux服务器下]需要使用SQL语句直接对数据表进行新建/修改表结构, 填充/更新数据等. 或借助数据库管理工具执行SQL,但是这种方法,比较适合做微小的操作~好处:使用SQL去操作,可以避免繁琐, 遗漏, 快捷方便, 一步到位.原创 2019-04-24 15:13:42 · 72350 阅读 · 1 评论 -
MySQL插入多行记录,防止主键重复
1.应用场景 即当批量插入记录,主键字段值相同时,做额外处理 //不过一般可以先先将数据做处理,如唯一性处理,之后再做批量插入。 2.学习/操作 key points: MYSQL:INSERT INTO .. ON DUPLICATE KEY 举个例子,字段a被定义为UNIQUE,并且原数据库表table中已存在记录(2,2,9)和(3,2,1),...原创 2019-05-20 18:05:20 · 5181 阅读 · 0 评论 -
PHP - mysql与mysqli事务使用说明
主要用于对数据库进行事务操作,完成相关入库操作~原创 2019-08-14 13:14:21 · 4662 阅读 · 1 评论 -
left join on and 与 left join on where的区别
1.应用场景 有时,业务逻辑,两个实体之间是一对多关系,但是都存在多个版本,需要两个实体版本对应起来,就需要添加一个约束条件【也可以理解为: 将多对多关系,添加一个条件约束,变为一对多关系】 on 后面就是两个条件,另外on后面不一定是 ‘=’,也可以试其他逻辑关系 2.核心点join 后面是可以跟多个条件 【之间是并列关系,而且不一定等号,只要是条...原创 2019-08-08 12:57:00 · 4501 阅读 · 0 评论 -
MySQL GROUP_CONCAT()函数的排序方法
1.用法:group_concat()函数的参数是可以直接使用order by排序的。2.例子: 表中数据如下: idusername score 1 张三 90 2 李四 85 3 王五 80 4 张三 70 5 李四 80 6 张三 60 ...原创 2019-07-31 10:12:24 · 36722 阅读 · 2 评论 -
MySQL 批量插入/填充数据 - 实践
1.应用场景应用场景之一:有时,我们需要创建表并填充大量测试数据。 2.学习/操作 方法如下: 方法一: 通过储存过程 1.我们先来新建一个表,创建两个普通索引 CREATE TABLE IF NOT EXISTS `t` ( `id` int(11) NOT NULL, `a` int(11) DEFAULT NULL,...原创 2019-06-03 15:50:56 · 7399 阅读 · 0 评论 -
执行一条SQL语句流程 - 学习
1.应用场景 每天都在跟 mysql 打交道,你知道执行一条简单的 select 语句,都经历了哪些过程吗?【不知道!!,真的】 便于我们更清楚地知道执行流程, 快速准确地找出关键所在。 2.学习/操作 首先,mysql 主要是由 server 层和存储层两部分构成的。 server 层主要包括连接器、查询缓存,分析器、优化器、执行器。存储层主要是用...原创 2019-05-22 13:09:41 · 4449 阅读 · 0 评论