mysql主从配置

MySQL存储引擎MyISAM和InnoDB

拟墨画扇 提交于 2020-01-07 23:36:26
存储引擎概念介绍 MySQL中的数据用各种不同的技术存储在文件中,每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎 存储引擎就是MySQL将数据存储在文件系统中的存储方式或者存储格式————因此适用的场景也不一样 目前MySQL常用的两种存储引擎 MyISAM InnoDB 存储引擎:一种基础的驱动力,存储技术:存储机制、索引技巧、锁定水平。 mysql存储引擎是mysql数据库服务器中的组建,负责为数据库执行实际的数据I/O操作 使用特殊存储的主要优点之一在于:仅需要提供特殊应用所需的特性,数据库中的系统开销较小,具有更有效和更高的数据库性能 mysql系统中,存储引擎处于文件系统之上,在数据保存到数据文件之前会传输到存储引擎,之后按照各个存储引擎的存储格式进行储存 前后端的开发语言去提取拿取数据,这就需要装驱动,,具体的对象叫connector连接者 connection pool 叫连接池,类似所谓的空闲的线程或者进程去进行连接,在里面回房多个被连接对象,以备连接,并且节省响应时间,优化访问效率 使用线程或者进程去连接,链接需要媒介载体,就是sock通信文件,以提供pid文件,所有的线程都需要sock文件去管理, 数据放在磁盘上,在逻辑层面上放在file system 中

Mycat 快速入门

故事扮演 提交于 2020-01-07 07:04:31
什么是Mycat 至于什么是Mycat,可能在不同的角色下有不同的理解。对MySQL架构有过了解的话,都知道MySQL实际上是由Server层和存储引擎层组成的。所以 对于DBA来说 ,Mycat 就是 MySQL 的Server层。而 Mycat 后面连接的 MySQL Server,就好象是 MySQL 的存储引擎。因此,Mycat 本身并不存储数据,数据是在后端的 MySQL 上存储的,因此数据的可靠性 以及事务等依旧是 MySQL 保证的。 对于开发人员来说 ,Mycat基本等同于MySQL。因为完全可以使用连接MySQL的方式去连接Mycat,除了默认端口不同之外,连接方式上没有区别。所以Mycat对于开发人员来说是透明的,只不过在SQL的使用上有一些限制。 而对于架构师来说 ,Mycat 是一个数据库中间件,可以用作读写分离、分表分库以及容灾备份等。对于使用Mycat的应用来说,其隐藏了数据库的存储逻辑。让我们无需在代码上去对读写分离等存储逻辑进行控制,从而达到不修改应用代码的前提下,扩展数据库架构。 由于Mycat是国内的开源项目,有非常完善且丰富的中文文档。所以本文就不对基础概念进行赘述了,建议参考 Mycat权威指南在线版 或到 Mycat官网 中了解更多关于Mycat的内容。 什么是数据库中间件 数据库中间件,就是介于数据库与应用之间

MySQL灵魂五十问

给你一囗甜甜゛ 提交于 2020-01-06 17:14:36
1、MySQL 中有哪几种锁? 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。 行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。 页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。 2、MySQL 中有哪些不同的表格? 共有 5 种类型的表格: MyISAM Heap Merge INNODB ISAM 3、简述在 MySQL 数据库中 MyISAM 和 InnoDB 的区别 MyISAM: 不支持事务,但是每次查询都是原子的; 支持表级锁,即每次操作是对整个表加锁; 存储表的总行数; 一个 MYISAM 表有三个文件:索引文件、表结构文件、数据文件; 采用菲聚集索引,索引文件的数据域存储指向数据文件的指针。辅索引与主索引 基本一致,但是辅索引不用保证唯一性。 InnoDb: 支持 ACID 的事务,支持事务的四种隔离级别; 支持行级锁及外键约束:因此可以支持写并发; 不存储总行数: 一个 InnoDb 引擎存储在一个文件空间(共享表空间,表大小不受操作系统控制, 一个表可能分布在多个文件里),也有可能为多个(设置为独立表空,表大小受操作系统文件大小限制,一般为 2G),受操作系统文件大小的限制; 主键索引采用聚集索引(索引的数据域存储数据文件本身)

CentOS7安装MySQL并配置主从复制

社会主义新天地 提交于 2020-01-06 14:31:12
一、MySQL主从复制原理 1.1 基于语句的复制:在主服务器上执行的SQL语句,再在从服务器上执行一次,默认采用语句复制 1.2 基于行的复制:把改变的内容复制过去,而不是把命令再在从服务器上执行一遍 1.3 混合类型复制:一旦发现基于语句无法精确的复制时,就会采用基于行的复制 二、MySQL复制的过程 2.1 在每个事务完成之前,master(主服务器)在二进制日志中记录这些改变 2.2 slave(从服务器)开启IO线程,将master的binary log(二进制日志)复制到中继日志 2.3 SQL线程从中继日志中读取事件,更新slave的数据库 三、安装MySQL 3.1 安装wget yum -y install wget 3.2 下载MySQL的rpm包 wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm 3.3 安装 rpm -ivh mysql57-community-release-el7-9.noarch.rpm yum -y install mysql-server 3.4 启动MySQL systemctl start mysqld systemctl enable mysqld 3.5 第一次登录MySQL会在MySQL的日志中提供初始密码 grep

浅谈数据库集群方案

不想你离开。 提交于 2020-01-06 03:28:04
单点数据库 数据库往往是系统中的性能瓶颈,所以通常在系统设计中会引入各种各样的缓存机制,以避免频繁访问数据库。另外,数据库由于其重要性,高可用要求也是避免不了的,因为一旦数据库挂了基本上整个系统也就不能使用了。 而以上这些常见问题都是单点数据库带来的限制,为了解决这些问题,达到高性能、高可用的目的,我们就需要在系统架构设计中采用数据库集群方案。 性能测试 既然单点数据库存在性能问题,那么有没有实际数据呢?下面我们就来对单点数据库进行一个性能测试,看看其并发极限大概是多少。我这里使用了一台2核2G的云服务,mysql版本为8.0.18。 mysql自带了一个性能测试工具:mysqlslap,我们可以使用该工具进行测试,具体的测试参数如下: [root@localhost ~]# mysqlslap -hlocalhost -uroot -pyour_password -P3306 --concurrency=500 --iterations=1 --auto-generate-sql --auto-generate-sql-load-type=mixed --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=500 主要参数说明: 参数 说明 --concurrency 并发数量

数据库中间件:CentOS7下MySQL主从Master-Slaves同步配置(一)

限于喜欢 提交于 2020-01-04 09:41:46
CentOS7下MySQL主从Master-Slaves同步配置 环境说明 Centos版本: CentOS Linux release 7.7.1908 (Core) Linux连接工具:SecureCRT MySQL Version: 5.7.28 主库主机地址:192.168.163.61 从库主机地址:192.168.163.62 参考文档:https://dev.mysql.com/doc/refman/5.7/en/replication.html 为什么要做主从同步 主从配置原理 配置主从同步 1.1 配置主服务器 修改主服务器配置文件/etc/my.cnf #启用二进制日志记录 :主服务器基于二进制日志文件位置的复制 log-bin=mysql-bin #每个服务器必须配置有唯一的服务器ID,实战中,通常配置为IP的最后一个数字 server-id=61 #指定可以主从同步的数据库,多数据库要配置多行 binlog-do-db=db_consumer binlog-ignore-db=information_schema binlog-ignore-db=mysql binlog-ignore-db=orders binlog-ignore-db=performance_schema binlog-ignore-db=sys 重启MySQL服务 [ root

MySQL常用备份策略详解 —— mysqldump、mysqlpump 和 Xtrabackup

扶醉桌前 提交于 2020-01-04 00:19:29
一、备份简介 2.1 备份分类 按照不同的思考维度,通常将数据库的备份分为以下几类: 物理备份 与 逻辑备份 物理备份:备份的是完整的数据库目录和数据文件。采用该模式会进行大量的 IO 操作,但不含任何逻辑转换,因此备份和恢复速度通常都比较快。 逻辑备份:通过数据库结构和内容信息来进行备份。因为要执行逻辑转换,因此其速度较慢,并且在以文本格式保存时,其输出文件的大小大于物理备份。逻辑备份的还原的粒度可以从服务器级别(所有数据库)精确到具体表,但备份不会包括日志文件、配置文件等与数据库无关的内容。 全量备份 与 增量备份 全量备份:备份服务器在给定时间点上的所有数据。 增量备份:备份在给定时间跨度内(从一个时间点到另一个时间点)对数据所做的更改。 在线备份 与 离线备份 在线备份:数据库服务在运行状态下进行备份。此时其他客户端依旧可以连接到数据库,但为了保证数据的一致性,在备份期间可能会对数据进行加锁,此时客户端的访问依然会受限。 离线备份:在数据库服务停机状态下进行备份。此备份过程简单,但由于无法提供对外服务,通常会对业务造成比较大的影响。 2.2 备份工具 MySQL 支持的备份工具有很多种,这里列出常用的三种: mysqldump :这是 MySQL 自带的备份工具,其采用的备份方式是逻辑备份,支持全库备份、单库备份、单表备份。由于其采用的是逻辑备份

DBA学习参考绝佳资料

爱⌒轻易说出口 提交于 2020-01-04 00:14:52
原文来自: pursuer.chen 原文地址:https://www.cnblogs.com/chenmh/default.aspx?page=1 [置顶]MongoDB 文章目录 2018-02-09 10:27 by pursuer.chen, 144 阅读, 收藏 , 编辑 基础: MongoDB入门系列(一):基础概念和安装 MongoDB入门系列(二):Insert、Update、Delete、Drop MongoDB入门系列(三):查询(SELECT) MongoDB入门系列(四):权限管理 MongoDB入门系列(五):聚合操作 MongoDB 错误汇总 MongoDB 启动配置参数 集群: MongoDB 复制机制 MongoDB 搭建可复制群集 MongoDB 副本集管理 MongoDB 搭建分片集群 MongoDB 分片管理 MongoDB 分片键的选择与案例 OPS: 0 Comment [置顶]SQL Server 文章目录 2017-06-02 17:27 by pursuer.chen, 335 阅读, 收藏 , 编辑 SQL Server系列: 高可用方案: 搭建域服务器和DNS 搭建Windows故障转移群集 SQL Server Alwayson概念总结 SQL Server AlwaysOn搭建 SQL Server

MySQl资料链接

你。 提交于 2020-01-04 00:14:40
原文:http://www.uml.org.cn/sjjm/sjjm-MySql.asp MySQl MySQL高可用数据库内核深度优化的四重定制 MySQL数据表存储引擎类型及特性 MySQL分布式数据库高可用架构、复制机制、多机房 Mysql高并发优化 我必须得告诉大家的MySQL优化原理 MySQL注入攻击与防御 腾讯云:MySQL数据库的高可用性分析 一步一步打造MySQL高可用平台 MySQL 日志管理详解 MySQL锁解决并发问题详解 MySQL的配置与管理 MySQL日志管理 MySQL 5.7新特性介绍 MySQL数据库读写分离中间件Atlas 京东MySQL数据库主从切换自动化 全面了解MySql中的事务 MySQL NULL值简介 MySQL备份的持续验证:还原备份 初识MySQL存储过程 优步工程团队对容器化MySQL的应用 MySQL NULL值简介 MySQL备份的持续验证:还原备份 MySQL SQL语句优化技巧 MySQL简单主从方案及暴露的问题 Uber为什么从Postgres迁移到MySQL 一种MySQL到HBase的迁移策略的研究与实现 MySQL 索引详解大全 MYSQL企业常用架构与调优经验分享 SQL优化之六脉神剑 MySQL 大表优化方案探讨 mysql 数据库引擎 MySQL数据库事务隔离级别 MySQL 用户权限详细汇总

2020.01.03 linux mysql的主从备份

回眸只為那壹抹淺笑 提交于 2020-01-03 15:16:06
1.分别停止主从的mysql service mysqld start service mysqld stop service mysqld restart 2.修改主和从数据库配置文件 数据库文件默认在:cd /usr/share/mysql 配置文件默认在:/etc/my.cnf 修改配置文件 : 主服务器数据库,增加如下配置: server-id =1    #唯一即可 log-bin = mysql-bin  #bin日志所在目录 从服务器数据库,增加如下配置: server-id = 2    #唯一即可 log-bin = mysql-bin  #bin日志所在目录 3.分别重启两个服务器的MySQL服务 4.主服务器授权Slave权限账号 登陆mysql:mysql -uroot -p123456 ; (u后面跟账号,p后面跟密码) 授权 mysql->GRANT REPLICATION SLAVE ON . TO ‘slave’@‘ip’ identified by ‘123456’ slave 用户名,123456密码,在配置从服务器的时候会用到 mysql->show master status; 若看到有File(mysql-bin.000001) Position(443) 则成功 5.配置从服务器 登录数据库 如果以前执行过配置的话要停止同步 1.stop