-
详解MySQL高可用方案:MySQL MHA架构、原理、应用场景等
所属栏目:[MySql教程] 日期:2019-07-31 热度:107
概述 MySQL高可用,顾名思义就是当MySQL主机或服务发生任何故障时能够立马有其他主机顶替其工作,并且最低要求是要保证数据一致性。因此,对于一个MySQL高可用系统需要达到的目标有以下几点: 数据一致性保证--这个是最基本的同时也是前提,如果主备的数据[详细]
-
MySQL分库分表会带来哪些问题?
所属栏目:[MySql教程] 日期:2019-07-31 热度:134
分库分表能有效的环节单机和单库带来的性能瓶颈和压力,突破网络IO、硬件资源、连接数的瓶颈,同时也带来了一些问题。下面将描述这些技术挑战以及对应的解决思路。 1、事务一致性问题 分布式事务 当更新内容同时分布在不同库中,不可避免会带来跨库事务问[详细]
-
两款免费的MySQL性能监控工具
所属栏目:[MySql教程] 日期:2019-07-31 热度:144
MySQL管理和性能监控工具,能帮助你监控MySQL服务器,以及微调其性能和速度。众所周知,MySQL是功能强大的开源数据库系统,可让企业运行一系列不同的应用,如网站和ERP存储系统。MySQL是任何企业的关键资源,因为它可以保持应用的正常运行。而你需要找到合[详细]
-
分析两个主机和Oracle数据库巡检脚本,值得收藏
所属栏目:[MySql教程] 日期:2019-07-31 热度:175
分享一个之前我用来巡检主机和Oracle的脚本,不过输出结果不是很美观,内容还是可以的... 主机巡检脚本:OSWatcher.sh ps:这里的第10项,普通用户检查/var/log/messages很可能没有读权限,如有需要巡检此系统日志,建议切换root用户执行此脚本。 #!/bin/ba[详细]
-
测试数据库的稳定性和性能竟如此简单
所属栏目:[MySql教程] 日期:2019-07-31 热度:176
概要说明 使用 Jmeter来对数据库进行压测,可以有效测试数据库的稳定性和性能。相比用代码实现对数据库的压测来说,Jmeter更简单,方便,可操作性更好。 操作步骤 1.选择测试计划,添加架包mysql-connector-java-5.1.12-bin.jar到路径下,用于数据库MySql[详细]
-
微软宣布SQL Server 2019免费支持Java
所属栏目:[MySql教程] 日期:2019-07-31 热度:62
在 2018 年 9 月的时候,微软就宣布与领先的 Java 开源贡献者和发行商 Azul Systems 建立新的合作伙伴关系。这一关系允许所有 Azure 客户在微软和 Azul 联合提供的支持下,免费使用 Azul 的 Zulu for Azure-Enterprise Java 发行版 。 最近,微软宣布已经[详细]
-
数据库集群方案及Oracle RAC架构分析
所属栏目:[MySql教程] 日期:2019-07-30 热度:66
应对业务量的不断增加场景通常有两个大方向,一种是纵向扩展,也就是增加单台服务器的CPU计算能力、内存容量和磁盘承载能力等;另外一种是横向扩展,也就是通过增加服务器的数量来增加处理能力。前者存在业务中断和扩展上限等诸多的问题,特别是互联网业务[详细]
-
两类非常隐蔽的全表扫描,不能命中索引(一分钟系列)
所属栏目:[MySql教程] 日期:2019-07-30 热度:89
《MySQL死锁分析的两个工具》中,举了一个强制类型转换导致死锁的例子,有朋友询问是不是类型转换都不能命中索引,花1分钟细说一下。 第一类:列类型与where值类型不符,不能命中索引,会导致全表扫描(full table scan)。 数据准备: createtablet1( cellv[详细]
-
100亿数据,非“双倍”扩容,如何不影响服务,数据平滑迁移?
所属栏目:[MySql教程] 日期:2019-07-30 热度:59
上次《百亿级数据DB秒级平滑扩容!》之后,很多朋友提问,说如果不是双倍扩容,能否做到平滑迁移,不影响服务呢? 适用什么场景? 互联网有很多数据量较大,并发量较大,业务复杂度较高的业务场景,其典型系统分层架构如下: (1)上游是业务层biz,实现个性化[详细]
-
数据库软件架构,到底要设计些什么?
所属栏目:[MySql教程] 日期:2019-07-30 热度:188
一、基本概念 概念一:单库 概念二:分片 分片解决数据量太大这一问题,也就是通常说的水平切分。 一旦引入分片,势必面临数据路由的新问题,数据到底要访问哪个库。路由规则通常有3种方法: (1)范围:range 优点:简单,容易扩展。 缺点:各库压力不均(新[详细]
-
超详细的设置Oracle用户永不被锁教程分享
所属栏目:[MySql教程] 日期:2019-07-30 热度:69
最近有个需求是需要对Oracle某个用户设置输错密码也不被锁,整体原理是:新建一个profile,设置密码错误次数不限制,然后把用户的概要文件(profile)设置为新建的这个profile,下面介绍下设置的过程。 一、默认profile 一般数据库默认是10次尝试失败后锁住[详细]
-
服务器性能优化的8种常用方法
所属栏目:[MySql教程] 日期:2019-07-30 热度:74
1.使用内存数据库 内存数据库,其实就是将数据放在内存中直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级,将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能。内存数据库抛弃了磁盘数据管理的传统方式,基于全部数据都在内[详细]
-
如何快速定位MySQL 的错误日志(Error Log)?
所属栏目:[MySql教程] 日期:2019-07-29 热度:82
日志文件是MySQL数据库的重要组成部分,包括有6种不同的日志文件: 错误日志: -log-err 查询日志: -log 慢查询日志: -log-slow-queries 更新日志: -log-update 二进制日志: -log-bin 这些日志可以帮助我们定位 mysqld 内部发生的事件,数据库性能故障,[详细]
-
如何避免回表查询?什么是索引覆盖? | 1分钟MySQL优化系列
所属栏目:[MySql教程] 日期:2019-07-29 热度:156
《迅猛定位低效SQL?》留了一个尾巴: selectid,namewherename='shenjian' selectid,name,sexwherename='shenjian' 多查询了一个属性,为何检索过程完全不同? 什么是回表查询? 什么是索引覆盖? 如何实现索引覆盖? 哪些场景,可以利用索引覆盖来优化SQL? 这[详细]
-
MySQL和PG到底哪个更好用?
所属栏目:[MySql教程] 日期:2019-07-28 热度:55
如果打算为项目选择一款免费、开源的数据库,那么你可能会在MySQL与PostgreSQL之间犹豫不定。 MySQL与PostgreSQL都是免费、开源、强大、且功能丰富的数据库。你主要的问题可能是:哪一个才是最好的开源数据库?MySQL还是PostgreSQL呢?该选择哪个开源数据[详细]
-
这两个小技巧,让SQL语句不仅躲了坑,还提升了1000倍
所属栏目:[MySql教程] 日期:2019-07-27 热度:89
本次来讲解与 SQL 查询有关的两个小知识点,掌握这些知识点,能够让你避免踩坑以及提高查询效率。 1、允许字段的值为 null,往往会引发灾难 首先,先准备点数据,后面好演示 createtableanimal( idint, namechar(20), index(id) )engine=innodb; index(id)[详细]
-
如何利用工具,迅猛定位低效SQL? | 1分钟系列
所属栏目:[MySql教程] 日期:2019-07-27 热度:115
《两个工具分析SQL死锁》 《SQL空值带来的大坑》 两个案例分析,展现了MySQL性能分析工具explain的强大。 《同一个SQL语句,为啥性能差异咋就这么大呢?》 详细叙述了explain结果中最重要的type字段(连接类型)的含义。 其实,explain结果中还有一个Extra字[详细]
-
一文学会Mysql数据库性能优化--创建表、设计表、SQL优化
所属栏目:[MySql教程] 日期:2019-07-27 热度:129
概述 数据库的优化肯定是先分析再具体优化,前面已经介绍了在对mysql数据库sql做优化时的一些方法,今天主要从创建表、设计表及具体sql优化几个方面来介绍一些性能优化的方法。 01.创建表时的性能优化 1. 永远为每张表设置一个 ID 每张表都应该设置一个 ID[详细]
-
面试官:谈谈你对PG体系结构的理解?
所属栏目:[MySql教程] 日期:2019-07-27 热度:76
今天本文主要从日志文件、参数文件、控制文件、数据文件、redo日志(WAL)、后台进程这六个方面来介绍一下PostgreSQL的架构。 架构 PostgreSQL的主要架构如下: 一、日志文件 1. 日志文件种类 $PGDATA/log 运行日志(pg10之前为$PGDATA/pg_log) $PGDATA/pg_wa[详细]
-
四个步骤让你彻底明白Redis到底快在哪里
所属栏目:[MySql教程] 日期:2019-07-27 热度:52
前言 Redis是一种基于键值对(Key-Value)的NoSQL数据库,Redis的Value可以由String,hash,list,set,zset,Bitmaps,HyperLogLog等多种数据结构和算法组成。Redis还提供了键过期,发布订阅,事务,Lua脚本,哨兵,Cluster等功能。Redis执行命令的速度非常[详细]
-
MySQL--RDS下的分区表实践
所属栏目:[MySql教程] 日期:2019-07-25 热度:196
实践背景 项目中有的表空间太大,且行数太多,故决定对一些表进行分库分表。再研究选型方案的时候发现常用的一些分库分表的解决方案对业务代码修改较多,故决定采用MySQL的分区方案。 其实在我个人看来,分区表就是MySQL帮我们实现了底层的分库分表,不需[详细]
-
Web安全测试必须注意的五个方面
所属栏目:[MySql教程] 日期:2019-07-24 热度:129
随着互联网的飞速发展,web应用在软件开发中所扮演的角色变得越来越重要,同时,web应用遭受着格外多的安全攻击,其原因在于,现在的网站以及在网站上运行的应用在某种意义上来说,它是所有公司或者组织的虚拟正门,所以比较容易遭受到攻击,存在安全隐患[详细]
-
直接在 DNA 上执行 SQL 操作,已通过 PostgreSQL 验证
所属栏目:[MySql教程] 日期:2019-07-24 热度:108
法国通信系统工程师学校与研究中心(Eurecom)数据科学系助理教授 Appuswamy 和伦敦帝国理工学院 SCALE 实验室负责人 Heinis 等人近期发表了一篇关于在 DBMS 存储层操作DNA的论文《OligoArchive: Using DNA in the DBMS storage hierarchy》。 论文研究了[详细]
-
详解MySQL索引长度和区分度之间的平衡,值得收藏
所属栏目:[MySql教程] 日期:2019-07-24 热度:159
概述 前面我们讲了怎么去计算索引所占用的长度?那么换个方式想?索引又应该设置多少长度比较合理呢? 区分度与索引长度的权衡 首先索引长度和区分度是相互矛盾的, 索引长度太短,那么区分度就很低,吧索引长度加长,区分度就高,但是索引也是要占内存的,所[详细]
-
一个简单易用的开源BI软件,专为SQL用户设计的开源库
所属栏目:[MySql教程] 日期:2019-07-24 热度:133
poli 一个易于使用的SQL报告应用程序,专为SQL爱好者而设计。 SQL中的电源数据分析,可获得更快的业务洞察力。 特性 自托管和轻松设置 平台独立的Web应用程序 单个JAR文件+单个SQLite DB文件。在5分钟内启动并运行。 连接任何支持JDBC驱动程序的数据库 Pos[详细]