-
Redis系列:详解Memcached、Redis等缓存的特征、原理、应用
所属栏目:[MySql教程] 日期:2019-08-07 热度:57
随着互联网的普及,内容信息越来越复杂,用户数和访问量越来越大,我们的应用需要支撑更多的并发量,同时我们的应用服务器和数据库服务器所做的计算也越来越多。但是往往我们的应用服务器资源是有限的,且技术变革是缓慢的,数据库每秒能接受的请求次数也[详细]
-
面试官:在使用MySQL数据库时,遇到重复数据怎么处理?
所属栏目:[MySql教程] 日期:2019-08-07 热度:92
前言 前段时间,很多人问我能不能写一些数据库的文章,正好自己在测试mysql数据库性能的时候,出现了一个问题,也就是出现了很多重复的数据,想起来自己long long ago写过一篇类似的,仅此就拿来总结了一下。如果你在使用mysql的时候也遇到了这个问题,希[详细]
-
超越Cookie:当今的客户端数据存储技术
所属栏目:[MySql教程] 日期:2019-08-07 热度:85
当 cookie 被首次引入时,它是浏览器保存数据的唯一方式。之后又有了很多新的选择:Web Storage API、IndexedDB 和 Cache API。那么 cookie 死了吗?我们来看看这些在浏览器中存储数据的技术。 Cookies Cookie 是由服务器发送或在客户端上设置的信息单位,[详细]
-
超详细的PG数据存储结构:逻辑结构和物理存储总结
所属栏目:[MySql教程] 日期:2019-08-06 热度:157
概述 今天主要讲讲PG的数据结构,PG数据存储结构分为:逻辑结构和物理存储。 其中逻辑存储结构是内部的组织和管理数据的方式。物理存储结构是操作系统中组织和管理数据的方式。逻辑存储结构适用于不同的操作系统和硬件平台。 一、逻辑存储结构 逻辑结构包[详细]
-
8月数据库排行:Oracle 节节攀升,PG 和 MongoDB 分数再现下跌
所属栏目:[MySql教程] 日期:2019-08-06 热度:125
DB-Engines 数据库流行度排行榜 8 月更新已发布,排名前二十如下: 整体排名和上个月的基本保持一致,其中最引人注目的变化是 PostgreSQL 和 MongoDB 这两个一直保持上升趋势的数据库罕见地再次出现了分数下降(6月份也出现了下降),两者分别减少了 1.94[详细]
-
超详细的PG事务隔离级别总结,值得收藏
所属栏目:[MySql教程] 日期:2019-08-05 热度:147
今天主要介绍一下PG的事务隔离,事务隔离和锁机制是息息相关的,希望大家这两块都可以掌握。下面先看下SQL标准的四种隔离级别。 四种隔离级别 SQL标准定义了四种隔离级别。最严格的是可序列化,在标准中用了一整段来定义它,其中说到一组可序列化事务的任[详细]
-
后端程序员必备:MySQL数据库相关流程图/原理图
所属栏目:[MySql教程] 日期:2019-08-05 热度:161
前言 整理了一些Mysql数据库相关流程图/原理图,做一下笔记,大家一起学习。 1.mysql主从复制原理图 mysql主从复制原理是大厂后端的高频面试题,了解mysql主从复制原理非常有必要。 主从复制原理,简言之,就三步曲,如下: 主数据库有个bin-log二进制文件[详细]
-
收下这张小贴士,填补那些年在HQL注入留下的坑
所属栏目:[MySql教程] 日期:2019-08-03 热度:95
前言 SQL注入是一种大家非常熟悉的攻击方式,目前网络上有大量存在注入漏洞的DBMS(如MySQL,Oracle,MSSQL等)。但是缺少针对hibernate查询语言的相关资源,以期本文能给在渗透测试时能给各位多提供一条路。 HQL查询并不直接发送给数据库,而是由hibernate[详细]
-
如何在Ubuntu上安装MongoDB
所属栏目:[MySql教程] 日期:2019-08-03 热度:200
本教程介绍了在 Ubuntu 和基于 Ubuntu 的 Linux 发行版上安装 MongoDB 的两种方法。 MongoDB 是一个越来越流行的自由开源的 NoSQL 数据库,它将数据存储在类似 JSON 的灵活文档集中,这与 SQL 数据库中常见的表格形式形成对比。 你很可能发现在现代 Web 应[详细]
-
超详细的数据库主机及数据库日志收集总结
所属栏目:[MySql教程] 日期:2019-08-02 热度:93
今天主要针对主机和数据库日志的一些收集做一下记录总结,下面一起来看看吧~ 一、主机系统日志收集: 创建主机日志收集目录: --Unix/Linux创建存放系统日志的文件夹: #mkdir-p/var/collect/OS 1. Linux Linux系统日志文件: /var/log/messages 将最近100[详细]
-
记一个 MySQL设计不合理地方:应用程序错误密码不断重连校验机制QL
所属栏目:[MySql教程] 日期:2019-08-02 热度:142
概述 最近修改了mysql数据库一个用户的密码,然后应用程序也改了对应密码,过了一段时间发现了一系列问题...下面介绍下整体的过程。 1、监控告警 从监控可以看到这台主机发生磁盘告警的问题。 2、查看服务器磁盘信息 登录这台服务器可以发现根目录磁盘满了[详细]
-
详解MySQL高可用方案:MySQL MHA架构、原理、应用场景等
所属栏目:[MySql教程] 日期:2019-08-01 热度:133
概述 MySQL高可用,顾名思义就是当MySQL主机或服务发生任何故障时能够立马有其他主机顶替其工作,并且最低要求是要保证数据一致性。因此,对于一个MySQL高可用系统需要达到的目标有以下几点: 数据一致性保证--这个是最基本的同时也是前提,如果主备的数据[详细]
-
MySQL分库分表会带来哪些问题?
所属栏目:[MySql教程] 日期:2019-08-01 热度:200
分库分表能有效的环节单机和单库带来的性能瓶颈和压力,突破网络IO、硬件资源、连接数的瓶颈,同时也带来了一些问题。下面将描述这些技术挑战以及对应的解决思路。 1、事务一致性问题 分布式事务 当更新内容同时分布在不同库中,不可避免会带来跨库事务问[详细]
-
两款免费的MySQL性能监控工具
所属栏目:[MySql教程] 日期:2019-08-01 热度:111
MySQL管理和性能监控工具,能帮助你监控MySQL服务器,以及微调其性能和速度。众所周知,MySQL是功能强大的开源数据库系统,可让企业运行一系列不同的应用,如网站和ERP存储系统。MySQL是任何企业的关键资源,因为它可以保持应用的正常运行。而你需要找到合[详细]
-
分析两个主机和Oracle数据库巡检脚本,值得收藏
所属栏目:[MySql教程] 日期:2019-08-01 热度:57
分享一个之前我用来巡检主机和Oracle的脚本,不过输出结果不是很美观,内容还是可以的... 主机巡检脚本:OSWatcher.sh ps:这里的第10项,普通用户检查/var/log/messages很可能没有读权限,如有需要巡检此系统日志,建议切换root用户执行此脚本。 #!/bin/ba[详细]
-
测试数据库的稳定性和性能竟如此简单
所属栏目:[MySql教程] 日期:2019-08-01 热度:107
概要说明 使用 Jmeter来对数据库进行压测,可以有效测试数据库的稳定性和性能。相比用代码实现对数据库的压测来说,Jmeter更简单,方便,可操作性更好。 操作步骤 1.选择测试计划,添加架包mysql-connector-java-5.1.12-bin.jar到路径下,用于数据库MySql[详细]
-
微软宣布SQL Server 2019免费支持Java
所属栏目:[MySql教程] 日期:2019-08-01 热度:149
在 2018 年 9 月的时候,微软就宣布与领先的 Java 开源贡献者和发行商 Azul Systems 建立新的合作伙伴关系。这一关系允许所有 Azure 客户在微软和 Azul 联合提供的支持下,免费使用 Azul 的 Zulu for Azure-Enterprise Java 发行版 。 最近,微软宣布已经[详细]
-
数据库软件架构,到底要设计些什么?
所属栏目:[MySql教程] 日期:2019-07-31 热度:102
一、基本概念 概念一:单库 概念二:分片 分片解决数据量太大这一问题,也就是通常说的水平切分。 一旦引入分片,势必面临数据路由的新问题,数据到底要访问哪个库。路由规则通常有3种方法: (1)范围:range 优点:简单,容易扩展。 缺点:各库压力不均(新[详细]
-
超详细的设置Oracle用户永不被锁教程分享
所属栏目:[MySql教程] 日期:2019-07-31 热度:186
最近有个需求是需要对Oracle某个用户设置输错密码也不被锁,整体原理是:新建一个profile,设置密码错误次数不限制,然后把用户的概要文件(profile)设置为新建的这个profile,下面介绍下设置的过程。 一、默认profile 一般数据库默认是10次尝试失败后锁住[详细]
-
服务器性能优化的8种常用方法
所属栏目:[MySql教程] 日期:2019-07-31 热度:110
1.使用内存数据库 内存数据库,其实就是将数据放在内存中直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级,将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能。内存数据库抛弃了磁盘数据管理的传统方式,基于全部数据都在内[详细]
-
数据库集群方案及Oracle RAC架构分析
所属栏目:[MySql教程] 日期:2019-07-29 热度:106
应对业务量的不断增加场景通常有两个大方向,一种是纵向扩展,也就是增加单台服务器的CPU计算能力、内存容量和磁盘承载能力等;另外一种是横向扩展,也就是通过增加服务器的数量来增加处理能力。前者存在业务中断和扩展上限等诸多的问题,特别是互联网业务[详细]
-
两类非常隐蔽的全表扫描,不能命中索引(一分钟系列)
所属栏目:[MySql教程] 日期:2019-07-29 热度:170
《MySQL死锁分析的两个工具》中,举了一个强制类型转换导致死锁的例子,有朋友询问是不是类型转换都不能命中索引,花1分钟细说一下。 第一类:列类型与where值类型不符,不能命中索引,会导致全表扫描(full table scan)。 数据准备: createtablet1( cellv[详细]
-
100亿数据,非“双倍”扩容,如何不影响服务,数据平滑迁移?
所属栏目:[MySql教程] 日期:2019-07-29 热度:135
上次《百亿级数据DB秒级平滑扩容!》之后,很多朋友提问,说如果不是双倍扩容,能否做到平滑迁移,不影响服务呢? 适用什么场景? 互联网有很多数据量较大,并发量较大,业务复杂度较高的业务场景,其典型系统分层架构如下: (1)上游是业务层biz,实现个性化[详细]
-
如何快速定位MySQL 的错误日志(Error Log)?
所属栏目:[MySql教程] 日期:2019-07-29 热度:125
日志文件是MySQL数据库的重要组成部分,包括有6种不同的日志文件: 错误日志: -log-err 查询日志: -log 慢查询日志: -log-slow-queries 更新日志: -log-update 二进制日志: -log-bin 这些日志可以帮助我们定位 mysqld 内部发生的事件,数据库性能故障,[详细]
-
如何避免回表查询?什么是索引覆盖? | 1分钟MySQL优化系列
所属栏目:[MySql教程] 日期:2019-07-29 热度:77
《迅猛定位低效SQL?》留了一个尾巴: selectid,namewherename='shenjian' selectid,name,sexwherename='shenjian' 多查询了一个属性,为何检索过程完全不同? 什么是回表查询? 什么是索引覆盖? 如何实现索引覆盖? 哪些场景,可以利用索引覆盖来优化SQL? 这[详细]