随笔分类 - 数据库-MySQL
摘要:创建函数时报错: 1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want
阅读全文
摘要:MySQL 报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket 一、错误现场还原: 下面我们通过三种方式来连接,然后观察提示的错误信息: 1、直接使用“mysql”命令,不带主机名参数; 2、使用带了主机
阅读全文
摘要:场景:通过mysql -h localhost -u root -p 连接MySQL数据库时报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket /tmp/mysql.sock 解决方案: 1、创建mysq
阅读全文
摘要:一、清空表语句 truncate table [表名] ; delete from [表名] where …; 二、相同点 两者都是删除表数据 但不会删除表结构 三、不同点 delete支持按条件删除,truncate不支持。 delete 删除后自增列不会重置,而truncate会被重置。 del
阅读全文
摘要:一、索引类型 索引可以提升查询速度,会影响where查询,以及order by排序。 MySQL索引类型如下: (1) 从索引存储结构划分:B Tree索引、Hash索引、FULLTEXT全文索引、R Tree索引; (2) 从应用层次划分:普通索引、唯一索引、主键索引、复合索引; (3) 从索引键
阅读全文
摘要:1. DQL相关 2. DDL、DML、DCL相关 3.架构相关 3.1 MySQL的复制原理以及流程 主从复制:将主数据库中的DDL和DML操作通过二进制日志(BINLOG)传输到从数据库上,然后将这些日志重新执行。 主从复制的作用 主数据库出现问题,可以切换到从数据库。 可以进行数据库层面的读写
阅读全文
摘要:DBA操作规范 1、涉及业务上的修改/删除数据,在得到业务方、CTO的邮件批准后方可执行,执行前提前做好备份,必要时可逆。 2、所有上线需求必须走工单系统,口头通知视为无效。 3、在对大表做表结构变更时,如修改字段属性会造成锁表,并会造成从库延迟,从而影响线上业务,必须在凌晨0:00后业务低峰期执行
阅读全文
摘要:1、数据库设计方面 A. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 B. 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描。 如: select id from t where nu
阅读全文
摘要:谓词下推 将外层查询块的 WHERE 子句中的谓词移入所包含的较低层查询块(例如视图),从而能够提早进行数据过滤以及有可能更好地利用索引。 这在分区数据库环境中甚至更为重要,其原因在于,提早进行过滤有可能减少必须在数据库分区之间传递的数据量。此优化技术在 SQL 中被称为谓词下推(Predicate
阅读全文
摘要:1、下载tar包 (1)Window PC下载(PC需要联网) MySQL官网地址:https://www.mysql.com/ MySQL社区版下载地址: https://dev.mysql.com/downloads/mysql/ (2)Linux服务器下载(Linux服务器需要联网): wge
阅读全文
摘要:一、 SELECT * 的含义 select * 语句是从指定的表中按照顺序返回所有列。 二、 SELECT * 的优缺点 1 优点 在实际开发过程中,大家习惯性地使用select * from table_name进行数据查询,当然使用*代替具体的字段名称有一些优点。 主要优点有如下几个方面: 1
阅读全文
摘要:1. 下载employees示例数据库employees是一个官方提供的简单数据库,在mysql的官方找到employees的说明页面,通过github下载该数据库。 https://github.com/datacharmer/test_db 2. 导入employees数据库解压下载好的打包文件
阅读全文
摘要:MySQL执行过程以及顺序 前言:MySQL在我们的开发中基本每天都要面对的,作为开发中的数据的来源,MySQL承担者存储数据和读写数据的职责。因为学习和了解MySQL是至关重要的,那么当我们在客户端发起一个SQL到出现详细的查询数据,这其中究竟经历了什么样的过程?MySQL服务端是如何处理请求的,
阅读全文
摘要:一、编写查询SQL顺序 1.select 2.from 3.join on 4.where 5.group by 6.having 7.order by 8.limit 二、MySQL执行顺序 1.from 2.on 3.join 4.where 5.group by 6.having 7.sele
阅读全文
摘要:一、索引的建立原则(1)、对查询频次较高, 且数据量比较大的表, 建立索引。(2)、索引字段的选择, 最佳候选列应当从where子句的条件中提取, 如果where子句中的组合比较多, 那么应当挑选最常用, 过滤效果最好的列的组合。(3)、如果where后有多个条件经常被用到, 建议建立复合索引, 复
阅读全文
摘要:最左匹配原则都是针对联合索引来说的,那么为什么要使用联合索引呢? 一、为什么要使用联合索引? 1、减少开销。 建一个联合索引(col1,col2,col3),实际相当于建了(col1),(col1,col2),(col1,col2,col3)三个索引。每多一个索引,都会增加写操作的开销和磁盘空间的开
阅读全文
摘要:Navicat是一套可创建多个连接的数据库管理工具,用以方便管理 MySQL、Oracle、PostgreSQL、SQLite、SQL Server、MariaDB 、MongoDB 等不同类型的数据库,并支持管理某些云数据库,例如阿里云、腾讯云。 下面介绍如何使用它导入MySQL的示例数据库em
阅读全文
摘要:(一)概念 MySQL的CTE是在MySQL8.0版本开始支持的,公用表表达式是一个命名的临时结果集,仅在单个SQL语句(例如select、insert、delete和update)的执行范围内存在。CTE分为递归CTE和非递归CTE。 (二)意义 1、MySQL8.0之前,进行复杂查询时需要使用子
阅读全文
摘要:顺序IO是指读写操作的访问地址连续。在顺序IO访问中,HDD所需的磁道搜索时间显着减少,因为读/写磁头可以以最⼩的移动访问下一个块。数据备份和日志记录等业务是顺序IO业务。随机IO是指读写操作时间连续,但访问地址不连续,随机分布在磁盘的地址空间中。产⽣随机IO的业务有OLTP服务,SQL,即时消息服
阅读全文
摘要:1、更新Linux yum yum update 2、安装wget工具(如果已经安装wget,可以跳过该步骤) yum install wget 3、使用wget下载MySQL Yum Repository并执行安装 wget https://dev.mysql.com/get/mysql80-co
阅读全文

浙公网安备 33010602011771号