MySQL
让你零基础开始了解数据库,使之成为高级程序员必走的一步。
destiny- freedom
希冀
展开
-
主从复制
01-主从复制一、基本原理slave会从master读取binlog来进行数据同步1、三步骤master将写操作记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件,binary log events;slave将master的binary log events拷贝到它的中继日志(relay log);slave重做中继日志中的事件,将改变应用到自己的数据库中。 MySQL复制是异步的且串行化的,而且重启后从接入点开始复制(先搭建主从复制环境,再创建数据库和表)。复制的原创 2020-07-16 01:02:55 · 170 阅读 · 0 评论 -
工具和技巧拾遗
01-View视图一、是什么将一段查询sql封装为一个虚拟的表。这个虚拟表只保存了sql逻辑,不会保存任何查询结果。二、作用封装复杂sql语句,提高复用性逻辑放在数据库上面,更新不需要发布程序,面对频繁的需求变更更灵活三、适用场景共用查询结果报表四、语法1、创建CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition-- 例如:求所有人物对应的掌门名称CREATE原创 2020-07-16 00:53:45 · 108 阅读 · 0 评论 -
查询截取分析
01-慢查询日志一、是什么MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10秒以上的语句。由他来查看哪些SQL超出了我们的最大忍耐时间值,比如一条sql执行超过5秒钟,我们就算慢SQL,希望能收集超过5秒的sql,结合之前explain进行全面分析。二、怎么玩1、说明默认情况下,MySQL数据原创 2020-07-16 00:50:18 · 176 阅读 · 0 评论 -
索引优化分析
01-使用Explain一、Explain简介1、是什么使用EXPLAIN关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是 如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈2、能干嘛表的读取顺序数据读取操作的操作类型哪些索引可以使用哪些索引被实际使用表之间的引用每张表有多少行被优化器查询3、怎么玩EXPLAIN + SQL语句4、建表语句 USE atguigudb; CREATE TABLE t1(id INT(10) AUTO_INCR原创 2020-07-16 00:41:53 · 206 阅读 · 0 评论 -
数据结构与索引
01-SQL预热一、数据库优化方案性能下降、SQL慢、执行时间长、等待时间长数据过多:分库分表索引失效,没有充分利用到索引:索引建立关联查询太多join(设计缺陷或不得已的需求):SQL优化服务器调优及各个参数设置(缓冲、线程数等):调整my.cnf二、SQL执行顺序1、手写2、机读随着Mysql版本的更新换代,其优化器也在不断的升级,优化器会分析不同执行顺序产生的性能消耗不同而动态调整执行顺序。下面是经常出现的查询顺序:鱼骨图:三、常见JOIN查询1、JOIN图原创 2020-07-16 00:16:18 · 632 阅读 · 0 评论 -
阿里云服务器安装MySQL成功,但是无法启动服务?
昨天在阿里云服务器上安装MySQL5.7.28安装成功。并且启动也没问题,在改密码策略那一块的配置文件后,准备重启MySQL服务,于是就报了这样一个错误。[root@izuf66nqv677tlk3oco6llz opt]# systemctl start mysqldJob for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service"原创 2020-07-14 18:41:43 · 1584 阅读 · 2 评论 -
MySQL的架构介绍
01-MySQL简介一、MySQL 简介MySQL是一个关系型数据库管理系统,由瑞典MySQL AB(创始人Michael Widenius)公司开发,2008被Sun收购(10亿美金),2009年Sun被Oracle收购。MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL是开源的,所以你不需要支付额外的费用。MySQL是可以定制的,采用了GPL(GNU General Public License)协议,你可以原创 2020-07-14 01:37:23 · 1005 阅读 · 0 评论 -
MySQL_流程控制结构
流程控制结构 顺序、分支、循环分支结构#1.if函数/*语法:if(条件,值1,值2)功能:实现双分支应用在begin end中或外面*/#2.case结构/*语法:情况1:类似于switchcase 变量或表达式when 值1 then 语句1;when 值2 then 语句2;...else 语句n;end 情况2:case when 条件1...原创 2020-03-29 23:09:30 · 135 阅读 · 0 评论 -
MySQL_存储过程与函数
存储过程和函数/*存储过程和函数:类似于java中的方法好处:1、提高代码的重用性2、简化操作*/存储过程/*含义:一组预先编译好的SQL语句的集合,理解成批处理语句1、提高代码的重用性2、简化操作3、减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率*/#一、创建语法CREATE PROCEDURE 存储过程名(参数列表)BEGIN 存储过程体(...原创 2020-03-29 23:06:47 · 109 阅读 · 0 评论 -
MySQL_变量
变量/*系统变量: 全局变量 会话变量自定义变量: 用户变量 局部变量*/系统变量/*说明:变量由系统定义,不是用户定义,属于服务器层面注意:全局变量需要添加global关键字,会话变量需要添加session关键字,如果不写,默认会话级别使用步骤:1、查看所有系统变量show global|【session】variables;2、查看满足条件的部分系统变量...原创 2020-03-29 23:03:25 · 63 阅读 · 0 评论 -
MySQL_视图
视图/*含义:虚拟表,和普通表一样使用mysql5.1版本出现的新特性,是通过表动态生成的数据比如:舞蹈班和普通班级的对比 创建语法的关键字 是否实际占用物理空间 使用视图 create view 只是保存了sql逻辑 增删改查,只是一般不能增删改表 create table 保存了数据 增删改查*/#案例:查询姓张的学生名和专业名SELECT stuname...原创 2020-03-29 23:00:23 · 91 阅读 · 0 评论 -
MySQL_事务
TCL#TCL/*Transaction Control Language 事务控制语言事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行。案例:转账张三丰 1000郭襄 1000update 表 set 张三丰的余额=500 where name='张三丰'意外update 表 set 郭襄的余额=1500 where name=...原创 2020-03-29 22:57:15 · 105 阅读 · 0 评论 -
SQL——约束与标识列
标识列/*又称为自增长列含义:可以不用手动的插入值,系统提供默认的序列值特点:1、标识列必须和主键搭配吗?不一定,但要求是一个key2、一个表可以有几个标识列?至多一个!3、标识列的类型只能是数值型4、标识列可以通过 SET auto_increment_increment=3;设置步长可以通过 手动插入值,设置起始值*/#一、创建表时设置标识列DROP TABLE...原创 2020-03-29 22:55:17 · 358 阅读 · 0 评论 -
MySQL——数据类型
文章目录常见的数据类型整型小数字符型日期型常见的数据类型数值型: 整型 小数: 定点数 浮点数字符型: 较短的文本:char、varchar 较长的文本:text、blob(较长的二进制数据)日期型:整型/*分类:tinyint、smallint、mediumint、int/integer、bigint1 2 3 4 8特点:① 如果不设置无符号还...原创 2020-03-29 22:48:53 · 105 阅读 · 0 评论 -
SQL数据处理之增删改
文章目录DML语言插入语句修改语句删除语句DML语言数据操作语言:插入:insert修改:update删除:delete插入语句#方式一:经典的插入/*语法:insert into 表名(列名,...) values(值1,...);*/SELECT * FROM beauty;#1.插入的值的类型要与列的类型一致或兼容INSERT INTO beauty(id,N...原创 2020-03-29 22:42:47 · 168 阅读 · 0 评论 -
SQL创建和管理表
文章目录创建数据库命名规则CREATE TABLE 语句创建表常用数据类型使用子查询创建表ALTER TABLE 语句追加一个新列重命名一个列删除一个列修改一个列删除,重命名和清空表改变对象的名称清空表删除表创建数据库 创建一个保存员工信息的数据库 create database employees; 相关其他命令show databases;查看当前所有数据库use em...原创 2020-03-29 22:36:21 · 361 阅读 · 0 评论 -
SQL数据处理之查询
文章目录基本的SELECT语句过滤和排序数据分组函数分组查询多表查询分页查询基本的SELECT语句 SELECT 标识选择哪些列。 FROM 标识从哪个表中选择。SELECT * -- * 表示所有的列FROM employees; 选择特定的列SELECT department_id, location_id FROM departments; 列的别名...原创 2020-03-29 11:25:04 · 339 阅读 · 0 评论 -
MySQL数据库的基本语法和命令
文章目录MySQL语法规范MySQL常见命令行MySQL语法规范 不区分大小写 每句话用;或\g结尾 各子句一般分行写 关键字不能缩写也不能分行 用缩进提高语句的可读性MySQL常见命令行 进入 mysqlmysql -uroot -p#### //####表示密码 查看mysql中有哪些个数据库show databases; 使用一个数据库use 数...原创 2020-03-22 23:48:02 · 192 阅读 · 0 评论 -
MySQL数据库的基本配置
文章目录MySql数据库产品的介绍MySQL产品的特点MySql数据库的安装MySQL的版本MySQL数据库卸载MySQL数据库的安装配置文件介绍MySQL服务的启动与停止MySql数据库产品的介绍MySQL产品的特点 MySQL数据库隶属于MySQL AB公司,总 部位于瑞典,08年被sun公司收购,09年sun公司被oracle收购。因此,MySQL现属于oracle公司。 优点:...原创 2020-03-22 20:05:14 · 472 阅读 · 0 评论 -
关于SQL的概述
目录数据库的好处数据库的概念数据库管理系统(DBMS)SQL语言概述数据库的特点SQL语言分类DMLDDLDCL数据库的好处 实现数据持久化 使用完整的管理系统统一管理,易于查询数据库的概念 DB数据库( database ):存储数据的“仓库”。它保存了一系列有组织的数据。 DBMS数据库管理系统( Database Management System )。数据库是...原创 2020-03-21 22:06:02 · 207 阅读 · 0 评论