MySql
文章平均质量分 88
MySql
程序猿洞晓
不忘初心,方得始终。
展开
-
CentOS7环境下离线安装MySQL8.0.28数据库
环境说明安装环境:CentOS7 64位MySQL数据库版本:MySQL8.0.28安装方式:离线安装(服务器环境没有外部网络)这里需要说明一下安装方式,很多人为了方便可能直接使用yum源,省去了很多步骤,但是对于公司内部的服务器是不能连接外网的,因此这里就只能自己上传安装包安装啦。(如果你们公司有专业的DBA,无需自己弄,恭喜你不需要看这个博客啦!)数据库下载MySQL 8.0.28 Linux安装包下载:https://dev.mysql.com/downloads/mysql/这个地址进原创 2022-04-25 18:02:09 · 1718 阅读 · 1 评论 -
分布式唯一Id(雪花算法):原理+对比+方案
集群高并发情况下如何保证分布式唯一全局Id生成为什么需要分布式全局唯一Id,以及分布式Id的业务需求在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。如在美团点评的金融、支付、餐饮、酒店;猫眼电影等产品的系统中数据日渐增长,对数据分库分表后需要有一个唯一Id来标识一条数据或消息;特别一点的如订单、骑手、优惠券也都需要有唯一Id坐标时。此时一个能够生成全局唯一Id的系统是非常必要的。Id生成规则部分硬性要求全局唯一;趋势递增:在Mysql的InnoDB引擎中使用的是聚集索引,由于多数转载 2022-04-07 19:09:21 · 5346 阅读 · 0 评论 -
CentOS7环境下离线安装MySQL5.7数据库
近期在做一个项目,需要搭建一个开发环境,数据库技术选型是MySQL5.7,在网上直接搜了很多关于安装MySQL5.7的教程,踩坑踩雷是必然了,为了以后再次安装方便,记一下笔记,毕竟在茫茫的技术文章中筛选,还是比较麻烦的。环境说明安装环境:CentOS7 64位MySQL数据库版本:MySQL5.7安装方式:离线安装(服务器环境没有外部网络)这里需要说明一下安装方式,很多人为了方便可能直接使用yum源,省去了很多步骤,但是对于公司内部的服务器是不能连接外网的,因此这里就只能自己上传安装包安装啦。数原创 2022-03-13 23:08:03 · 7464 阅读 · 1 评论 -
MySQL数据库系列(六):MySQL之索引数据结构分析
数据库的索引分类、SQL的优化等在之前文章都有写过。这篇文章单独来说说数据库的原理,也就是说数据库的索引存储结构和为什么这么存储。文章的内容也大多是从其他博客中摘抄下来,并加入自己的理解。前言MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同。MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。数据结构索引的本质MySQL官方对索引的定原创 2022-03-13 23:05:25 · 920 阅读 · 0 评论 -
MySQL数据库系列(五):MySQL之SQL优化十大口诀了解一下
SQL优化,心中永远的痛,同事写的各种复杂SQL,各种坑,有时候想拿出来优化一下,但是总感觉力不从心,不知从哪里下手。下面就一起聊聊SQL优化有哪些技巧。优化前准备首先需要建立一张表,这个表里面有联合索引,有普通索引。也是平时最常用了,看SQL:CREATE TABLE `t` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uname` varchar(32) DEFAULT NULL, `age` int(11) DEFAULT NULL, `po原创 2022-03-13 23:03:13 · 1106 阅读 · 0 评论 -
MySQL数据库系列(四):MySQL数据库的执行计划怎么看
数据库执行计划是优化SQL时必备的技能,如果只靠猜和借鉴前人的经验,只会让自己不断的踩坑。索引了解一下在写执行计划之前需要先了解一下数据库有哪些索引。普通索引:建立在普通的单列上,单纯的索引列,没有唯一性的要求。组合索引:在表中的多个字段组合创建的索引。唯一索引:当前索引列的值是唯一的,不可重复的。全文索引:全文索引如同普通索引的细化,只能在char、varchar、text数值类型类中建立。其中组合索引有一个特性就是最左前缀原则,组合索引的最左列被使用到才会让整个组合索引生效。比如一个索原创 2022-03-13 22:58:58 · 2347 阅读 · 0 评论 -
MySQL数据库系列(三):MySQL数据库的ACID事务特性和隔离性级别
事务的ACID特性事务的特性主要有四种,简称为ACID。分别如下:原子性(atomicity):一个事务内是一个最小的操作单元,在此单元里操作成功或者失败都是同步的,不会存在部分成功部分失败的问题。隔离性(isolation):多个事务之间是隔离开的,事务之间对数据的操作是不会互相影响的。但是对于数据库来说有不同的隔离级别,事务之间的影响也是不同的。一致性(consistency):在一个事务中,操作的数据是最终一致的,用官方的话说就是数据库总是从一个一致性的状态转换到另一个一致性的状态。如A给B原创 2022-03-13 22:54:05 · 1009 阅读 · 0 评论 -
MySQL数据库系列(二):MySQL数据库的存储引擎
mysql存储引擎熟知的主要是myISAM、InnoDB。myISAM和InnoDB到底有什么区别呢,都常说如果项目上使用到事务就用InnoDB,如果对事务无要求就用myISAM,查询速度更快。除了这两个存储引擎还有那些呢,虽然不常用,但是还是要做个了解,万一遇到合适的场景,到时候就没有那么慌啦。这篇内容主在了解,不做详细原理解释。mysql存储引擎mysql数据的存储引擎是很多的,想查看你使用的数据库有哪些引擎,一个命令可以帮助你。↓↓show engines;执行命令后得到的结果如下:[外链原创 2022-03-13 22:52:22 · 860 阅读 · 0 评论 -
MySQL数据库系列(一):MySQL数据库中锁
锁是计算机协调多个进程或纯线程并发访问某一资源的机制。 在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。概述相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。MySQL大致可归纳为以下3种锁:表级锁:开销小,加锁快;不会出现死锁;转载 2022-03-13 22:50:29 · 334 阅读 · 0 评论 -
linux系统下安装多个MySql数据库并做主从配置(个人项目经验)
在网上搜索了很多资料,都没有看到像样的文档,思路不是很清晰,对第一次安装的朋友来说较为困难,经过长时间的安装尝试和查询网上零碎的知识点,终于成功的完成Linux系统下多MySql数据库安装和主从配置,现在分享给大家。前提:1、关闭Liunx系统的防火墙,如果忘了,你下面的测试连接必定会失败,切记,切记,切记。2、yum安装lrzsz和cmakeyum -y install lrzs原创 2016-01-20 11:34:11 · 4930 阅读 · 0 评论 -
单个工程中Spring+Mybatis连接多个数据库的配置(个人分享版本)
上一篇博客说到同一个问题,经过和朋友的研究已经参考网上的资料,现在给出一份更简洁的配置。情景:现在单个工程中需要连接两个库,这两个库在同一个mysql中,两个库都需要进行读写。解决:第一步:将spring和mybatis整合,这个过程就不具体演示了,在这个过程中创建了直接使用的五个配置文件、两个类、一个标识。五个配置文件:jdbc.propertis(数据库连接信息)app...原创 2015-10-28 10:29:00 · 43744 阅读 · 8 评论 -
单个工程中Spring+Mybatis连接多个数据库的配置(个人研究版本)
之前在解决一个项目连接数据库问题的时候在网上苦寻答案无果,于是显示自己研究,终于黄天不负有心,接先来我将分享一下配置的具体过程。此种配置并非是数据库的读写分离,而是连接两个库。情景:现在单个工程中需要连接两个库,这两个库在同一个mysql中,两个库都需要进行读写。解决:第一步:将spring和mybatis整合,这个过程就不具体演示了,在这个过程中创建了直接使用的五个配置文件。原创 2015-10-27 09:44:48 · 14366 阅读 · 1 评论