mycat

CGB2005-京淘11

我只是一个虾纸丫 提交于 2020-09-27 13:29:02
1.数据库主从配置 1.1 数据库挂载原理 1.1.1 检查主库的状态 1.1.2 开启数据库二进制文件 修改主库核心配置文件 my.cnf vim / etc / my . cnf 1.1.3 重启mysql数据库 说明:当修改好my.cnf文件之后,需要重启数据库,检查二进制日志文件是否存在. 1.1.4 检查主库状态 1.1.5 修改从库二进制文件 修改之后重启mysql数据库 命令: 检查从库状态: 1.2 实现主从的挂载 1.2.1 挂载分析 说明: 从库挂载主库 主库IP地址/主库端口号/登录用户名/登录的密码/二进制日志文件/读取位置. 1.2.2 实现主从挂载 /*我是从库信息 130*/ SHOW MASTER STATUS ; /*实现主从的挂载*/ CHANGE MASTER TO MASTER_HOST = "192.168.126.129" , MASTER_PORT = 3306 , MASTER_USER = "root" , MASTER_PASSWORD = "root" , MASTER_LOG_FILE = "mysql-bin.000001" , MASTER_LOG_POS = 245 /*启动主从服务*/ START SLAVE /*检查主从的状态*/ SHOW SLAVE STATUS /*如果报错 则重新配置*/ STOP SLAVE

Mysql高可用架构

左心房为你撑大大i 提交于 2020-08-20 07:51:58
低读低写并发、低数据量方案 方案一:双机高可用方案 1.数据库架构图 2.特点 一台机器A作为读写库,另一台B作为备份库;A库故障后B库作为读写库;A库恢复后A作为备库。 3.开发说明 此种情况下,数据源配置中的数据库IP地址,可采用虚拟的IP地址。虚拟IP地址由两台数据库机器上的keepalive配置,并互相检测心跳。当其中一台故障后,虚拟IP地址会自动漂移到另外一台正常的库上。 数据库的主备配置、故障排除和数据补全,需要DBA和运维人员来维护。而程序代码或配置并不需要修改。 具体配置可参考资料: http://lizhenliang.blog.51cto.com/7876557/1362313 http://database.51cto.com/art/201012/237204.htm http://gaoke.iteye.com/blog/2283890 4.适应场景 读和写都不高的场景(单表数据低于500万),双机高可用。 5.优缺点 优点是一个机器故障了可以自动切换;缺点是只有一个库在工作,读写并未分离,并发有限制。 方案二:主从结构方案 1.数据库架构图 2.特点 一台机器A作为写库,另一台B作为读库;A库故障后B库充当读写,A修复后,B库为写库,A库为读库。 3.开发说明 这种方案的实现,要借助数据库中间件Mycat来实现,Mycat的datahost配置如下

诺禾致源:Java培训要多长时间?需要学习什么内容?

帅比萌擦擦* 提交于 2020-08-17 07:24:23
杭州Java培训要多长时间?需要学习什么内容? 浙江优就业 07-14 15:22 Java行业是很注重技术与工作经验的,零基础的人想找Java相关工作比较困难,需要先学习一定的Java知识才行,而参加Java培训是快速学习Java技术的一条捷径。当然在选择Java培训机构的时候首先要了解Java培训的学习时间与学习内容才行,下面小U就来介绍下 杭州Java培训要多长时间?需要学习什么内容? 杭州Java培训要多长时间? 不同的培训机构,不同的培训方式,Java培训时长也是不同的。优就业杭州Java全日制面授班的学习时长为6个月左右,因为Java学起来相对比较难,所以学习时间会比较长。 杭州Java培训需要学习什么内容? 优就业杭州Java培训课程内容是根据企业需求研发的,涵盖时下热门的Java技能,高度契合企业需求。并且在专业技术学习的同时,融入大量全真项目实训,理论与实战相结合,帮助学员学会、学懂。优就业杭州Java培训课程内容分为六个阶段,分别为: 第一阶段JavaEE基础,主要包含的知识点有:Java基础语法、面向对象、核心类库、集合、异常、IO、线程、JDK新特性、阶段考核。 第二阶段JavaWeb开发,主要包含的知识点有:前端技术、数据库、JAVA数据库操作、软件服务器及服务器相关技术、动态网页JSP、AJAX、优就业-在线医疗系统、阶段考核。 第三阶段Java高级框架

Mycatweb的介绍与搭建

萝らか妹 提交于 2020-08-16 22:35:42
Mycatweb是什么 Mycat-web是对mycat-server提供监控服务,功能不局限于对mycat-server使用。他基于jmx对所有JVM监控,通过JDBC连接对Mycat、Mysql 监控,基于snmp协议,监控远程服务器(目前仅限于linux系统)的cpu、内存、网络、磁盘。Mycat-web最近改名 Mycat-eye。 Mycatweb安装与配置 Mycat-eye运行过程中需要依赖zookeeper,因此需要先安装zookeeper,我安装的是zookeeper-3.4.14。 先下载zookeeper-3.4.14.tar.gz,然后解压,在conf/ 目录下找到 zoo-sample.cfg,将其复制为 zoo.cfg。我本地的目录为/usr/local/zookeeper-3.4.14,其内容主要如下: tickTime=2000 initLimit=10 syncLimit=5 dataDir=/tmp/zookeeper clientPort=2181 要记得的是端口号2181,启动 Mycat-eye 的时候会用到。然后启动 zookeeper,启动的入口在 bin/ 目录下,执行以下命令: [root@localhost bin]# ./zkServer.sh start;./zkServer.sh status ZooKeeper JMX

【无私分享:ASP.NET CORE 项目实战(第十二章)】添加对SqlServer、MySql、Oracle的支持

二次信任 提交于 2020-08-15 03:05:00
原文: 【无私分享:ASP.NET CORE 项目实战(第十二章)】添加对SqlServer、MySql、Oracle的支持 目录索引   【无私分享:ASP.NET CORE 项目实战】目录索引 简介      增加对多数据库的支持,并不是意味着同时对 多种数据库 操作,当然,后面,我们会尝试同时对多种数据库操作,这可能需要多个上下文,暂且不论。 分布式数据库 ,我们采用的是阿里云的Mycat,这个后面会更新出来。我们今天的场景是:我们的项目可能是在windows上开发的使用的是SqlServer,我们要发布到linux上,SqlServer 2017 据说是支持liunx的,但是还没出... 当然不是说 SqlServer 就不能装在liunx上,但是我们的Liunx服务器可能已经安装了MySql或 Oracle,我们希望使用现有的,又或者是,我们需要切换数据库。那么,我们需要可以随时切换数据库的支持。    添加NuGet包,注册服务    使用SqlServer数据库,这个官方有详细的步骤和解释,可以参考: https://docs.efproject.net/en/latest/providers/sql-server/index.html ,我们简单介绍一下   在 【(第四章)】Code First 创建数据库和数据表 中,我们使用的就是SqlServer

C++ 自动转换和强制类型转换(用户自定义类类型)

瘦欲@ 提交于 2020-08-14 06:22:51
——C++不自动转换不兼容的类型,允许用户自定义类类型的自动和强制转换 其它类型转成类: 只接受一个参数的构造函数可作为转换函数(若其它参数都有默认值,则也符合情况) class Stonewt { private: ... public: Stonewt (double lbs); {...} // template ofr double_-to-Stonewt conversion ... } ------------------------------------------------------------------>main() Stonewt myCat; // create a Stonewt object myCat = 19.6; // 隐式自动转换 use Stonewt(double) to convert 19.6 to Stonewt myCat = Stonewt (19.6);  // 显示强制转换 myCat = (Stonewt) 19.6;  // 显示强制转换 程序使用构造函数Stonewt(double)来创建一个临时对象,并初始化;随后采用逐成员赋值方式将该临时对象的内容复制到myCat中 关闭自动隐式转换: C++新增关键字explicit 用在声明头部 不影响显示强制转换 函数原型化提供的参数匹配过程,允许使用Stonewt

Mysql 优化策略的思考

让人想犯罪 __ 提交于 2020-08-14 03:38:05
如何提高数据库的访问性能,我们通常会想到 索引 或者 分库分表 等策略,下面以Mysql 为例解析下 索引 和 分库分表 的使用一些考虑 首先我们先了解什么是索引,以及索引的作用,要解决的问题。 PS:索引是一种排序的数据结构,为了提升数据的查询性能,索引数据本身也是存储在磁盘文件中。 一 索引的使用 1 Mysql中索引类型有哪些呢? 主键索引 --主键索引不可以为null 唯一索引 --可以有一个为null 全文索引 --通过 match against 查询命令支持文本匹配搜索的业务 2 Mysql 中索引数据结构有哪些? B+tree B Tree 由平衡二叉平衡树 ,降低树的高度变种为B Tree 通过节点的合并和分裂,降低树的高度; 充分考虑数据页DataPage的大小,充分利用逻辑区域内存 B+ Tree 每个节点存储的数量和定义的度一样,所以树的深度会降低 所有的父节点和分支节点不存储数据或者数据的指向磁盘地址 叶子节点指向了相邻节点的指针--不用重复从根节点访问 降低了数据的存储能力; 叶子节点本身是有序的数据,所以排序能力更好; Hash 通过hash码找到对应存储磁盘映射位置 hash支持等值,但对于范围值搜索不支持 3 Mysql 存储引擎有哪些呢,索引的存储结构是否会有不同呢? 存储引擎就是表数据存储的类型,以及以何种方式管理数据存储,对于不同的使用场景

SpringBoot集成MyCat

♀尐吖头ヾ 提交于 2020-08-13 15:53:43
什么是Mycat   MyCat是一个开源的分布式数据库系统,前端用户可以把它看作是一个数据库代理。其实现的核心原理是“拦截” 。Myacat拦截用户发送过来的Sql语句,做一些特定的分析:如分片分析,路由分 析,读写分析,读写分离分析。然后将SQL发往真实的数据库。不同于其他的中间件比如druid连接池,Mycat使用的是Nio异步通信机制(非阻塞型的),它的线程池数量默认为1,实际生产环境线 程数=CPU的核数。推荐使用Mycat1.6版本,项目中MyCat配置代替原数据源的配置,非常简单。 应用场景: 1)单纯的读写分离,此时配置最为简单,支持读写分离,主从切换; 2)分表分库,对于超过 1000 万的表进行分片,最大支持 1000 亿的单表分片; 3)多租户应用,每个应用一个库,但应用程序只连接 Mycat,从而不改造程序本身,实现多租户化; 4)报表系统,借助于 Mycat 的分表能力,处理大规模报表的统计; 替代 Hbase,分析大数据; 5)作为海量数据实时查询的一种简单有效方案,比如 100 亿条频繁查询的记录需要在 3 秒内查询出来结果,除了基于主键的查询,还可能存在范围查询或其他属性查询,此时 Mycat 可能是最简单有效的选 SpringBoot集成MyCat   Mycat已经帮我们在内部实现了路由的功能,我们只需要在Mycat中配置以下切分规则即可

数据库中间件设计分析

删除回忆录丶 提交于 2020-08-11 08:22:07
目录 1.为什么需要中间件 不分库篇 (1)普通的应用程序 (2)并发读写大--缓存 (3)缓存过期问题--读写分离+缓存 (4)隔离对DAO层影响--数据库中间件+读写分离+缓存 (5)业务模块多--集群+数据库中间件+读写分离+缓存 分库篇 (1)业务模块多,数据总量大--分库+缓存 (2)分库对Dao层代码影响--分库+数据库中间件+缓存 (3)读写压力大--分库+读写分离+数据库中间件+缓存 2.数据库中间价设计要点 (1)垂直拆分 (2)水平拆分 (3)无论是垂直拆分、水平拆分,都有共同的技术难点 (4)数据库中间件的两种实现模式 (5)常用数据库中间件简介 小结 1.为什么需要中间件 不分库篇 (1)普通的应用程序 数据库访问 数据库存储的数据量不是很大,但并发的读写操作都很大,超过数据库服务器的处理能力。 阿里云-RDS版MySQL性能测试结果(MySQL 5.6) TPS:每秒钟处理事务数量 QPS:每秒钟SQL语句执行条数(并发请求数) (2)并发读写大–缓存 业务场景 :数据量不是很大,仅并发读写超过数据库服务器的处理能力 解决办法 : 加缓存 (3)缓存过期问题–读写分离+缓存 业务场景 :缓存会有过期命不中,还是会有大量的读和全部的写操作将请求数据库,如果数据库支持不起,怎么办? 解决办法 :读写分离+缓存 (4)隔离对DAO层影响–数据库中间件+读写分离

Mycat入门和读写分离实战

冷暖自知 提交于 2020-08-11 07:06:28
1.什么是MyCat MyCAT是一款由阿里Cobar演变而来的用于支持数据库,读写分离、分表分库的分布式中间件。MyCAT支持Oracle、MSSQL、MYSQL、PG、DB2关系型数据库,同时也支持MongoDB等非关系型数据库。 MyCAT原理MyCAT主要是通过对SQL的拦截,然后经过一定规则的分片解析、路由分析、读写分离分析、缓存分析等,然后将SQL发给后端真实的数据块,并将返回的结果做适当处理返回给客户端。 2.基于MyCat实现读写分离 读写分离,简单地说是把对数据库的读和写操作分开,以对应不同的数据库服务器。主数据库提供写操作,从数据库提供读操作,这样能有效地减轻单台数据库的压力。主数据库进行写操作后,数据及时同步到所读的数据库,尽可能保证读、写数据库的数据一致,比如MySQL的主从复制、Oracle的data guard、SQL Server的复制订阅等。 3.安装Mycat 安装前准备 三台服务器(关闭防火墙) mycat安装服务器:192.168.223.140 主数据库:192.168.223.141 从数据库:192.168.223.142 读写分离前提是:实现主从复制,主从复制请参考 《主从复制原理》 1 、上传安装Mycat - server - 1.6 .5 - release - 20180122220033 - linux . tar 2