合集-mysql

摘要:一、python基础 人生苦短,我用Python(1) 工欲善其事-必先利其器(2) python基础-变量运算符(3) python基础-分支判断语句(4) python基础-循环语句(5) python基础-字符串(6) python基础-列表(7) python基础-字典(8) python基 阅读全文
posted @ 2019-04-16 17:17 Se7eN_HOU 阅读(1740) 评论(0) 推荐(3)
摘要:一、什么是数据库 数据库是数据的仓库。 与普通的“数据仓库”不同的是,数据库依据“数据结构”来组织数据,因为“数据结构”,所以我们看到的数据是比较“条理化”的(比如不会跟以前的普通文件存储式存储成一个文件那么不条理化,我们的数据库分成一个个库,分成一个个表,分成一条条记录,这些记录是多么分明) 也因 阅读全文
posted @ 2022-03-17 16:16 Se7eN_HOU 阅读(886) 评论(0) 推荐(1)
摘要:一、SQL通用语法 SQL 语法可以单行或者多行书写,以分号结尾。 SQL 语句可以使用空格/缩进来增强语句的可读性。 MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。 注释: 单行注释: -- 注释内容 或者 # 注释内容(MySQL 特有) 多行注释: /* 注释内容 */ 阅读全文
posted @ 2022-03-17 18:13 Se7eN_HOU 阅读(598) 评论(0) 推荐(1)
摘要:一、SQL通用语法 SQL 语法可以单行或者多行书写,以分号结尾。 SQL 语句可以使用空格/缩进来增强语句的可读性。 MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。 注释: 单行注释: -- 注释内容 或者 # 注释内容(MySQL 特有) 多行注释: /* 注释内容 */ 阅读全文
posted @ 2022-03-17 18:52 Se7eN_HOU 阅读(437) 评论(0) 推荐(0)
摘要:一、DQL介绍 DQL全称:Data Query Language(数据查询语言),用来查询数据库中表的记录。 关键字:select 二、DQL语法 select 字段列表 from 表名列表 where 条件列表 group by 分组字段列表 having 分组后条件列表 order by 排序 阅读全文
posted @ 2023-07-17 21:57 Se7eN_HOU 阅读(326) 评论(0) 推荐(0)
摘要:一、介绍 DCL:Data Control Language(数据控制语言),用来管理数据库用户,控制数据库的访问,权限。 二、用户管理 1、查询用户 语法: 1、use MySQL; 2、select * from user; 默认只有四个账户。 2、创建用户 语法:create user '用户 阅读全文
posted @ 2023-07-18 18:24 Se7eN_HOU 阅读(350) 评论(0) 推荐(0)
摘要:一、字符串函数 1、常见MySQL内置字符串函数 concat(s1,s2,s3,...):字符串拼接,将s1,s2,s3...等拼接成一个字符串 lower(str):将字符串str全部转为小写 upper(str):将字符串str全部转为大写 lpad(str,n,pad):左填充,将字符串pa 阅读全文
posted @ 2023-07-18 23:00 Se7eN_HOU 阅读(330) 评论(0) 推荐(0)
摘要:一、约束的基本概念 1、概念:约束是作用于表中字段上的规则,用于限制储存在表中的数据 2、目的:保证数据库中的数据的正确性,有效性和完整性 3、分类 非空约束(not null):限制该字段的数据不能为null 唯一约束(unique):保证该字段的所有数据都是唯一,不重复的 主键约束(primar 阅读全文
posted @ 2023-07-20 00:43 Se7eN_HOU 阅读(506) 评论(0) 推荐(0)
摘要:一、多表关系 一对多或者多对一 案例:部门与员工的关系 关系:一个部门对应多个员工,一个员工对应一个部门(不考虑跨部门的特殊情况) 实现:在多的一方建立外键,指向一的一方的主键,这里员工表是多的的一方,部门表是一的一方 多对多 案例:学生与课程的关系 关系:一个学生可以选修多门课程,一门课程也可以供 阅读全文
posted @ 2023-07-21 16:46 Se7eN_HOU 阅读(709) 评论(1) 推荐(1)
摘要:一、事务简介 事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有操作作为一个整体一起向系统提交或者撤销操作请求,即这些操作要么同时成功,要么同时失败。mysql的事务默认是自动提交的,也就是说,当执行一条DML语句,Mysql会立即隐式的提交事务 二、事务操作 2.1 查看事务提交方式 阅读全文
posted @ 2023-08-31 19:16 Se7eN_HOU 阅读(217) 评论(0) 推荐(0)
摘要:一、Mysql体系结构 1.1、连接层 最上层是一个客户端和链接服务,主要完成一些类似于链接处理,授权认证,及相关的安全方案,服务器也会为安全接入的而每个客户端验证它所具有的操作权限 1.2、服务层 第二层架构主要完成大多数的核心服务功能,如SQL接口,并完成缓存的查询,SQL的分析和优化,部分内置 阅读全文
posted @ 2023-07-24 17:30 Se7eN_HOU 阅读(347) 评论(0) 推荐(0)
摘要:一、SQL执行频率 MySQL客户端 连接成功后,通过show [session | global] status 命令可以提供服务器状态信息,通过如下指令,可以查看当前数据库的insert,update,dalete,select的访问频次 show [global | session] stat 阅读全文
posted @ 2023-07-27 14:21 Se7eN_HOU 阅读(874) 评论(0) 推荐(1)
摘要:一、索引概述 1.1 索引的介绍 索引index:是帮助 Mysql 高效获取数据 的 有序的数据结构,在数据之外,数据库系统维护着的满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引 1.2 索引的优缺点 优点1:提 阅读全文
posted @ 2023-07-27 23:30 Se7eN_HOU 阅读(807) 评论(0) 推荐(0)
摘要:一、最左前缀法则 如果索引了多列(联合索引),要遵守最左前缀法则。最左前缀法则指的是查询从索引的最左列开始,并且不跳过索引中的列,如果跳跃某一列,索引将部分失效(后面的字段索引失效) 示例1:account_transaction表中创建一个联合索引,使用method字段+trader_staff_ 阅读全文
posted @ 2023-07-28 13:40 Se7eN_HOU 阅读(868) 评论(1) 推荐(2)
摘要:一、插入数据优化 1.1 批量插入 如果有多条数据需要同时插入,不要每次插入一条,然后分多次插入,因为每执行一次插入的操作,都要进行数据库的连接,多个操作就会连接多次,而一次批量操作只需要连接1次 1.2 手动提交事务 因为Mysql默认每执行一次操作,就会提交一次事务,这样就会涉及到频繁的事务的开 阅读全文
posted @ 2023-07-31 01:25 Se7eN_HOU 阅读(1022) 评论(2) 推荐(2)
摘要:一、视图介绍 视图(View):是一种虚拟存在的表,视图中的数据并不在数据库中实际存在,行和列数据来自,定义视图时查询使用的表,并且是在使用视图时动态生成的。通俗的讲,视图只保存了查询的SQL逻辑,不保存查询的结果。 二、创建视图 2.1 语法 create [or replace] view 视图 阅读全文
posted @ 2023-07-31 16:33 Se7eN_HOU 阅读(689) 评论(0) 推荐(0)
摘要:一、介绍 存储过程是事先经过编译并存储在数据库中的一段sql语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。存储过程思想上很简单,就是数据库sql语言层面的代码封装与重用。 例如:我们在实际开发中经常会遇到先查询数据, 阅读全文
posted @ 2023-08-14 00:54 Se7eN_HOU 阅读(741) 评论(1) 推荐(0)
摘要:一、触发器 触发器是与表有关的数据库对象,指在insert/update/delete之前或者之后,触发并执行触发器中定义的sql语句集合,触发器的这种特性可以协助应用在数据库端确保数据的完整性,日志记录,数据校验等操作。 使用别名old和new来引用触发器中发生变化的记录内容,这与其他的数据库是相 阅读全文
posted @ 2023-08-17 00:24 Se7eN_HOU 阅读(441) 评论(0) 推荐(2)
摘要:一、简介 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除了传统的计算资源(CPU、RAM、i/O)的挣用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性,有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素,从这个角度来说,锁对 阅读全文
posted @ 2023-09-04 01:15 Se7eN_HOU 阅读(585) 评论(0) 推荐(0)
摘要:一、逻辑存储结构 表空间(Tablespace):一个mysql实例,及一个数据库实例,可以对应多个表空间(ibd文件),用于存储记录,索引等数据。 段(Segment):分为数据段(Leaf node segment)、索引段(Non-leaf node segment)、回滚段(Rollback 阅读全文
posted @ 2023-09-19 19:24 Se7eN_HOU 阅读(782) 评论(0) 推荐(1)
摘要:一、前言 MySQL的服务实现通过后台多个线程、内存池、文件交互来实现对外服务的,不同线程实现不同的资源操作,各个线程相互协助,共同来完成数据库的服务。MySQL常用的后台线程概括如下,分为Master Thread,IO Thread,Purge Thread,Page Cleaner Threa 阅读全文
posted @ 2023-09-20 09:19 Se7eN_HOU 阅读(735) 评论(0) 推荐(1)
摘要:一、事务概念 事务是一组操作的集合,他是一个不可分割的工作单位,事务会把所有操作作为一个整体一起向系统提交或者撤销请求操作,即这些操作要么同时成功,要么同时失败。 二、事务特性 原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败 一致性(Consistency): 阅读全文
posted @ 2023-09-20 17:04 Se7eN_HOU 阅读(895) 评论(0) 推荐(2)
摘要:一、系统数据库 MySQL数据库安装完成后,自带了四个数据库: mysql数据库:存储MySQL服务器正常运行所需要的各种信息如时区、主从、用户、权限等 infomation_schema:提供了访问数据库元数据的各种表和视图,包含数据库、表、字段类型及访问权限等 performance_schem 阅读全文
posted @ 2023-09-21 14:08 Se7eN_HOU 阅读(381) 评论(0) 推荐(2)
摘要:一、错误日志 错误日志是MySQL中最重要的日志之一,它记录了当MySQL启动和停止时,以及服务器在运行过程中发生的任何严重错误时的相关信息,当数据库出现任何故障导致无法正常使用时,建议首先查看此日志 错误日志默认是开启的,默认存在目录/var/log/,默认的日志文件名为mysqld.log, 但 阅读全文
posted @ 2023-09-25 11:01 Se7eN_HOU 阅读(294) 评论(0) 推荐(0)
摘要:一、主从复制概念 主从复制是指将主数据库的DDL和DML操作通过二进制日志传到从服务器中,然后在从服务器上对这些日志重新执行也叫重做,从而使得从数据库和主库的数据保持同步。 MySQL支持一台主库同时向多台从库进行赋值,从库同时也可以作为其他从服务器的主库,实现链式复制。 一般主服务器我们叫Mast 阅读全文
posted @ 2023-09-27 18:24 Se7eN_HOU 阅读(956) 评论(0) 推荐(6)
摘要:一、介绍 单库瓶颈:如果在项目中使用的都是单MySQL服务器,则会随着互联网及移动互联网的发展,应用系统的数据量也是成指数式增长,若采用单数据库进行存储,存在一下性能瓶颈: IO瓶颈:热点数据太多,数据库缓存不足,产生大量磁盘IO,效率低下,请求数据太多,带宽不够,网络IO瓶颈。 CPU瓶颈:排序、 阅读全文
posted @ 2023-12-12 19:16 Se7eN_HOU 阅读(286) 评论(0) 推荐(0)
摘要:一、mycat概述 mycat是阿里巴巴企业下的开源的,基于JAVA语言编写的MySQL数据库中间件,可以像使用MySQL一样来使用Mycat,对于开发人员来说根本感觉不到mycat的存在。之前在国内使用数据库分库分表,读写分离最主流的就是使用mycat,但是截止到今日2023-12-13日,myc 阅读全文
posted @ 2023-12-14 13:27 Se7eN_HOU 阅读(888) 评论(0) 推荐(3)
摘要:一、schema.xml 1.1 简介 schema.xml作为Mycat中最重要的配置文件之一,涵盖了Mycat的逻辑库、逻辑表、分片规则、分片节点即数据源的配置。主要包括一下三组标签 schema标签 datanode标签 datahost标签 1.2 schema标签 用于定于Mycat实例中 阅读全文
posted @ 2023-12-14 21:58 Se7eN_HOU 阅读(633) 评论(0) 推荐(1)
摘要:一、垂直分库场景 场景:在业务系统中,涉及一下表结构,但是由于用户与订单每天都会产生大量的数据,单台服务器的数据存储以及处理能力是有限的,可以对数据库表进行拆分,原有数据库如下 说明1:整个业务系统中的表,大致分为四个,商品信息类的表,订单相关的表,用户相关表及省市区相关的表,这里暂时将省市区的表和 阅读全文
posted @ 2023-12-17 18:18 Se7eN_HOU 阅读(373) 评论(0) 推荐(0)
摘要:一、取模分片 在业务系统中,有一张日志表,业务系统每天都会产生大量的日志数据,单台服务器的数据存储即处理能力是有限的,可以对数据库表进行拆分,这时候就可以使用取模分片的策略 说明1:每个表的结构一致 说明2:每个表的数据不同 说明3:所有表的合集才是完整的数据 二、准备工作 在192.168.3.9 阅读全文
posted @ 2023-12-18 10:19 Se7eN_HOU 阅读(347) 评论(0) 推荐(0)
摘要:一、范围分片 根据指定的字段及其配置的范围与数据节点的对应情况,来决定该数据属于哪一个分片。 说明1:范围分片会提前提供一个分片的范围默认是0-500万是一个分片,500万-1000万是一个分片,1000万-1500万是一个分片,超过1500万要重新设置。 说明2:这个范围我们可以根据自己的需要去自 阅读全文
posted @ 2023-12-18 17:38 Se7eN_HOU 阅读(247) 评论(0) 推荐(1)
摘要:一、枚举分片 通过在配置文件中配置可能的枚举值,指定数据分布到不同数据节点上,这种方式就是枚举分片规则,本规则适用于按照省份,性别,状态拆分数据等业务 二、枚举分片案例 枚举分片需求:现有 tb_enum 表,其中有 id, username, status三个字段,其中status值为1,2,3 阅读全文
posted @ 2023-12-18 23:40 Se7eN_HOU 阅读(232) 评论(0) 推荐(1)
摘要:一、一致性哈希分片 一致性哈希分片的实现思路和我们之前介绍的水平分表中的取模分片是类似的。只不过取模分片,采用的是利用主键和分片数进行取模运算,然后根据取模后的结果,将数据写入到不同的分片数据中。但是这种分片方式有一个局限性就只能对id是整形的数据使用,如果id是个uuid类型这个的非整形的字段,就 阅读全文
posted @ 2023-12-19 10:22 Se7eN_HOU 阅读(786) 评论(0) 推荐(1)
摘要:一、应用指定分片 此规则是在运行阶段有应用自主决定路由到那个分片,根据提供的字段,然后按照指定的规则,截取该字段的部分子字符串当做分片的依据,该分别方法比较灵活,适用于某个字段有几个特殊的字符串拼接而成的这种场景,例如:一个学校的学号:小学部的学号以0开头,形式为:0xxxxx(注意因为数据节点的索 阅读全文
posted @ 2023-12-19 16:33 Se7eN_HOU 阅读(305) 评论(0) 推荐(1)
摘要:一、按天分片 指定一个时间周期,将数据写入一个数据节点中,例如:第1-10天的数据,写入到第一个数据节点中,第2-20天的数据写入到第二个节点中,第3-30天的数据节点写入到第三个数据节点中。 说明1:按天分片要配置一个起始日期,一个结束日期,一个分片间隔时间三个参数 说明2:按天分片允许当前时间超 阅读全文
posted @ 2023-12-20 10:34 Se7eN_HOU 阅读(865) 评论(0) 推荐(1)
摘要:一、按照月分片 使用场景为按照自然月来分片,每个自然月为一个分片,但是一年有12个月,是不是要有12个数据节点才行呢?并不是。例如我现在只有三个分片数据库,这样就可以1月在第一个数据分片中,2月在第二个数据分片中,3月在第三个数据分片中,当来到4月的时候,就会重新开始分片,4月在第一个数据分片,5月 阅读全文
posted @ 2023-12-20 19:31 Se7eN_HOU 阅读(452) 评论(0) 推荐(0)
摘要:一、Mycat-web介绍 Mycat-web(现改名为Mycat-eye)是对Mycat-server提供监控服务,通过JDBC连接对Mycat,MySQL监控,监控远程服务器的cpu,内存,网络,磁盘等情况的使用。Mycat-web运行过程中需要依赖zookeeper,因此需要先安装zookee 阅读全文
posted @ 2023-12-21 23:11 Se7eN_HOU 阅读(344) 评论(0) 推荐(0)
摘要:一、读写分离介绍 读写分离,是把数据库的读和写分开操作,以应对不同的数据库服务器。主数据库提供写操作,从数据库提供读操作,这样能有效的减轻单台数据库的压力。 二、一主一从原理 MySQL的主从复制是基于二进制(binlog)实现的 说明1:当主服务器的MySQL执行了DML,DDL语句之后,会将数据 阅读全文
posted @ 2023-12-25 15:53 Se7eN_HOU 阅读(694) 评论(3) 推荐(1)
摘要:一、双主双从架构介绍 在MySQL多主多从的架构配置中和双主双从是一样的,学会了双主双从的架构部署,多主多从的配置也同样就回了。下面以双主双从作为示例演示。其中一个主机maste1用于处理所有写请求,它的从机slave1和另外一台主机master2还有它的从机salve2负责所有读数据请求,当mas 阅读全文
posted @ 2023-12-25 23:39 Se7eN_HOU 阅读(1247) 评论(1) 推荐(2)