last

mycat数据同步

只愿长相守 提交于 2019-11-27 05:03:37
mysql5.7支持两种事务同步 主从复制有两种方式:基于日志(binlog)、基于 GTID(全局事务标示符)。本次采用基于日志(binlog)的方式。 在以前的mysql版本中,读写分离的实现一般都是基于日志的主从复制实现的,这样会产生一个问题,就是master宕机之后,slave由于同步延时的问题,会导致master和slave内容不同,甚至会多个slave之间互相不同。所以为了解决这个问题,再mysql5.7.6版本之后加入了基于GTID的事务控制,具体的说就是每个事务由一个唯一的gtid标识,当slave都成功执行之后master才写入硬盘完成该事务,如果master突然宕机,那么就自动回滚。数据的一致性得到保证。 操作方法和普通的基于日志的主从复制差不了很多,主要就是打开两个开关 enforce_gtid_consistency = ON gtid_mode = ON 那么就具体的介绍一下这种主从同步的搭建过程。 Master: 首先要修改mysql的配置文件,我这里的配置文件路径为/etc/mysql/mysql.conf.d/mysqld.cnf,基于docker,不同的版本位置可能会不一样,windows下多数都叫my.cnf,下载地址:https://hub.docker.com/r/alexzhuo/mysql/。 这里只截取要修改的那一段 修改前:

自然数拆分

跟風遠走 提交于 2019-11-27 04:18:32
题目: 给出 sum 、 min 、 max 和 n 四个正整数,请输出所有将 sum 拆分为 n 个递增的正整数(允许相等)之和,其中每个正整数 k 都满足: min <= k <= max 。 在 少侠的博客 看到 这道题 ,就随手做了下。该题与输出 N 个数取 M 个数的所有组合类似,只不过限定了 M 个数的和以及取值范围。可以先用贪心算法构造一个最小的组合,然后调整这个组合,得到下一个组合。显然应该从后往前找到一个数字,该数增加 1 ,再调整该数后面的数。这个数就是: 从后往前第一个与最后一个数的差值大于 1 的数 (因为,如果差值小等于 1 ,无法调整后面的数得到一个符合要求的组合)。 // www.cnblogs.com/flyinghearts #include < iostream > #include < vector > #include < cassert > using std::cout; using std::vector; static inline void print( int arr[], int len, int n) { cout << n << " = " ; for ( int i = 0 ; i < len - 1 ; ++ i) cout << arr[i] << " + " ; cout << arr[len - 1 ]; cout

Google卫星地图定位(Resources)

爷,独闯天下 提交于 2019-11-27 03:55:39
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE>Google卫星地图定位</TITLE> <META http-equiv=Content-Type content="text/html; charset=utf-8"> <META content="MSHTML 6.00.6000.16809" name=GENERATOR> <STYLE> BUTTON { BORDER-TOP-WIDTH: 1px; PADDING-RIGHT: 2px; PADDING-LEFT: 2px; BORDER-LEFT-WIDTH: 1px; FONT-SIZE: 12px; BORDER-BOTTOM-WIDTH: 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 1px } INPUT { BORDER-TOP-WIDTH: 1px; PADDING-RIGHT: 2px; PADDING-LEFT: 2px; BORDER-LEFT-WIDTH: 1px; FONT-SIZE: 12px; BORDER-BOTTOM-WIDTH: 1px; PADDING-BOTTOM: 0px;

python采集小说网站完整教程(附完整代码)

删除回忆录丶 提交于 2019-11-27 03:23:50
python 采集网站数据,本教程用的是scrapy蜘蛛 1、安装Scrapy框架 命令行执行: pip install scrapy 安装的scrapy依赖包和原先你安装的其他python包有冲突话,推荐使用Virtualenv安装 安装完成后,随便找个文件夹创建爬虫 scrapy startproject 你的蜘蛛名称 文件夹目录 爬虫规则写在spiders目录下 items.py ——需要爬取的数据 pipelines.py ——执行数据保存 settings —— 配置 middlewares.py——下载器 下面是采集一个小说网站的源码 先在items.py定义采集的数据 # 2019年8月12日17:41:08 # author zhangxi<1638844034@qq.com> import scrapy class BookspiderItem(scrapy.Item): # define the fields for your item here like: i = scrapy.Field() book_name = scrapy.Field() book_img = scrapy.Field() book_author = scrapy.Field() book_last_chapter = scrapy.Field() book_last_time =

单词接龙

假如想象 提交于 2019-11-27 02:13:20
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如 beast 和 astonish ,如果接成一条龙则变为 beastonish ,另外相邻的两部分不能存在包含关系,例如 at 和 atide 间不能相连。 输入格式 输入的第一行为一个单独的整数 n ( n ≤ 2 0)表示单词数,以下 n 行每行有一个单词,输入的最后一行为一个单个字符,表示“龙”开头的字母。你可以假定以此字母开头的“龙”一定存在. 输出格式 只需输出以此字母开头的最长的“龙”的长度 输入输出样例 输入 #1 5 at touch cheat choose tact a 输出 #1 23 说明/提示 (连成的“龙”为atoucheatactactouchoose) NOIp2000提高组第三题 分析: 由于本题中n<=20,故可以尝试使用dfs暴力枚举下一个选择的字符串,并与上一个进行比对,这样的话是2^20,依然不会超时。 CODE: 1 #include<cmath> 2 #include<cstdio> 3 #include<cstring> 4 #include<iostream> 5 #include<algorithm> 6

左闭合区间

烂漫一生 提交于 2019-11-27 01:23:06
1、什么是左闭合区间?   [first,last),就是包含first,但是不包含last的区间范围。 2、为什么使用左闭合区间?   使用左闭合区间有两个方便的性质:   a、first == last,说明没有区间元素   b、first!=last,说明区间至少有一个元素,而且多次first++,最终可以到达last   c、查找target,返回的位置==last,说明在范围内没有找到target   编程中使用左闭合区间,更重要的是,提供了一致性。我们知道对于数组,和基于连续内存的集合,假如元素个数为5,可访问的范围是[0,5),注意下标5并不是有效元素。 转载于:https://www.cnblogs.com/nzbbody/p/3449949.html 来源: https://blog.csdn.net/weixin_30834783/article/details/99234531

Android Room使用详解

孤街浪徒 提交于 2019-11-27 01:18:43
使用Room将数据保存在本地数据库 Room提供了SQLite之上的一层抽象, 既允许流畅地访问数据库, 也充分利用了SQLite. 处理大量结构化数据的应用, 能从在本地持久化数据中极大受益. 最常见的用例是缓存有关联的数据碎片. 以这种方式, 在设备不能访问网络的时候, 用户依然能够浏览离线内容. 任何用户发起的改变, 都应该在设备重新在线之后同步到服务器. 因为Room为你充分消除了这些顾虑, 使用Room而非SQLite是高度推荐的. 添加依赖 Room的依赖添加方式如下: 1 dependencies { 2 def room_version = "1.1.1" 3 4 implementation "android.arch.persistence.room:runtime:$room_version" 5 annotationProcessor "android.arch.persistence.room:compiler:$room_version" 6 7 // optional - RxJava support for Room 8 implementation "android.arch.persistence.room:rxjava2:$room_version" 9 10 // optional - Guava support for Room,

数据结构(殷人琨版)学习笔记之顺序表

感情迁移 提交于 2019-11-27 00:11:58
把书上的伪代码整理了一下: /*************************************************************************** * file name : LinearList.h * created : 2011/11/01 * description : * author : Gavin Dai XLX * update : ****************************************************************************/ #ifndef __LINEARLIST_H #define __LINEARLIST_H /* 这是一个纯虚类,相当于就是一个接口 */ template<class T> class LinearList { public: LinearList() { }; ~LinearList() { }; virtual int size()const = 0;//求表的容量 virtual int length()const = 0;//求当前表中元素的个数 virtual int search(T& x)const = 0;//在表中查找x virtual int locate(int i) const = 0;//在表中定位第i个元素的位置

java-问题

这一生的挚爱 提交于 2019-11-26 20:45:46
public class Name { private String first, last; public Name(String first, String last) { if (first == null || last == null) throw new NullPointerException(); this.first = first; this.last = last; } // 访问权限 子类要大于或等于父类 // 返回类型 如果是原生类型 子类与父类保持一致 // 如果是对象类型 子类的返回类型可以是父类的派生类 // 方法参数 子类要保证和父类的顺序,数量,类型相同 public boolean equals(Name o) { return first.equals(o.first) && last.equals(o.last); } public int hashCode() { return 31 * first.hashCode() + last.hashCode(); } public static void main(String[] args) { Set s = new HashSet(); s.add(new Name("Mickey", "Mouse")); System.out.println(s.contains(new Name(