当前位置: 首页 > news >正文

网上手机商城网站建设安徽seo网站

网上手机商城网站建设,安徽seo网站,wordpress 启用ssl,白云商城型网站建设说明#xff1a;我安装的组件架构如下#xff1a; 1、准备一台虚拟机#xff0c;192.168.2.223#xff0c;我安装的时候#xff0c;docker只支持canal1.1.6版本#xff0c;1.1.7无法使用docker安装.还有一点要补充#xff0c;就是1.1.6好像不支持es8.0以上版本#x…说明我安装的组件架构如下 1、准备一台虚拟机192.168.2.223我安装的时候docker只支持canal1.1.6版本1.1.7无法使用docker安装.还有一点要补充就是1.1.6好像不支持es8.0以上版本官网说的是1.7版本才有es8.0以上.。 2、登录数据库的主机修改数据库的配置 #修改mysql的配置文件在[mysqld]下添加以下内容 server_id1 # 开启binlog log_bin mysql-bin # 选择row模式 binlog_format ROW#查看开启命令拓展这个用于和instance配置的数据库进行使用安装canal-admin的数据库可以不开启blog但是同步到数据库需要开启 show variables like log_bin; show variables like binlog_format; show variables like %server_id%;3、获取安装包和准备数据 mkdir -p /root/canal cd /root/canal #下载文件包 wget https://github.com/alibaba/canal/releases/download/canal-1.1.6/canal.admin-1.1.6.tar.gz mkdir canal-admin tar -zxvf canal.admin-1.1.6.tar.gz -C canal-admin #把cat的回显记录下来拿到自己准备的mysql上去创建需要的数据表。因为容器部署不支持source命令所以手动记录下来进行执行 cat /root/canal/conf/canal_manager.sql#去到安装mysql的主机登录mysql mysql -u 用户名 -p 密码 create database canal_manager; grant all privileges on canal_manager.* to canal% identified by canal flush privileges; exit mysql -ucanal -pcanal use canal_manager; #执行cat的内容下载的cana .admin-1.1.6.tar.gz安装包太慢的话1.1.7本部也适用的因为我后续需要安装1.7版本所以提供1.7版本可以通过我百度云进行下载 链接https://pan.baidu.com/s/1FDAcyTiFEZEITX0gAXOnmw 提取码70j9 4、部署安装 #执行安装账号密码可以自定义 docker run --privileged -p 8089:8089 -v /opt/canal-admin/conf:/root/canal/conf -v /opt/canal-admin/logs:/root/canal/logs --name canal-admin -e spring.datasource.address数据库的ip:端口/canal_manager?allowMultiQueriestrueuseUnicodtruecharac terEncodinutf-8serverTimezoneCTTallowPublicKeyRetrievaltrueuseSSL false -e spring.datasource.usernamecanal -e spring.datasource.passwordcanal -e canal.adminPasswd123456 -d canal/canal-admin:v1.1.7 #登录canal-adminip为安装主机ip,端口为8089,用户为admin密码为123456 #注canal_manager.sql 提供的脚本中canal_user 表提供的默认⽤户名为 canal密码为6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9也就是 SELECT PASSWORD(123456); 的值 所以登陆 canal-admin 管理平台的⽤户名就是 admin/1234565、安装canal-server #安装,这些账号密码可以自定义 docker run -p 11111:11111 --name canal-server01 -e canal.admin.register.autotrue -e canal.admin.register.namecanal-server01 -e canal.admin.manager192.168.2.223:8089 -e canal.admin.port11110 -e canal.admin.useradmin -e canal.admin.passwd6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 -d canal/canal-server:v1.1.6部署完成就可以看到server了,这里的serverip是容器的ip我们不需要进行修改修改会导致异常的。当我们需要使用的时候直接填写宿主机ip即可。 在操作配置中可以根据自己服务进行自定义和填写这里就不说明了。 6、创建instance在Instance 管理里点击新建输入名称和选择server #输入 # mysql集群配置中的serverId概念需要保证和当前mysql集群中id唯⼀ (v1.1.x版本之后c anal会⾃动⽣成不需要⼿⼯指定) # canal.instance.mysql.slaveId0 # mysql主库链接地址 canal.instance.master.addressmysql地址:port端口 # mysql主库链接时起始的binlog⽂件 canal.instance.master.journal.name # mysql主库链接时起始的binlog偏移量 canal.instance.master.position # mysql主库链接时起始的binlog的时间戳 canal.instance.master.timestamp # mysql数据库帐号(此处的⽤户名和密码为 安装canal#mysql配置相关#创建canal⽤户 这⼀步 创建的⽤户名和密码) canal.instance.dbUsernameroot # mysql数据库密码 canal.instance.dbPassword123456 # mysql 数据解析编码 canal.instance.connectionCharsetUTF-8 # mysql 数据解析关注的表Perl正则表达式即我们需要关注那些库和那些表的binlog数据 也可以在canal client api中⼿动覆盖 canal.instance.filter.regex.*\\..* # table black regex # mysql 数据解析表的⿊名单表达式规则⻅⽩名单的规则 ,这里我过滤掉了BASE TABLE不然启动会报错 canal.instance.filter.black.regexmysql\\.slave_.*,.*BASE TABLE7、新建sringboot项目idea默认创建的是高版本我调整了配置如下然后下一步下一步进行添加搜索和添加一些必要的依赖。熟悉的也可以通过pom文件自定义添加 https://start.aliyun.com/8、创建和启动验证具体业务需要自己去自定义 在pom文件中添加依赖 dependencygroupIdcom.alibaba.otter/groupIdartifactIdcanal.client/artifactIdversion1.1.0/version/dependency创建测试类SimpleCanalClientExample package com.example.demo;import java.net.InetSocketAddress; import java.util.List;import com.alibaba.otter.canal.client.CanalConnectors; import com.alibaba.otter.canal.client.CanalConnector; import com.alibaba.otter.canal.common.utils.AddressUtils; import com.alibaba.otter.canal.protocol.Message; import com.alibaba.otter.canal.protocol.CanalEntry.Column; import com.alibaba.otter.canal.protocol.CanalEntry.Entry; import com.alibaba.otter.canal.protocol.CanalEntry.EntryType; import com.alibaba.otter.canal.protocol.CanalEntry.EventType; import com.alibaba.otter.canal.protocol.CanalEntry.RowChange; import com.alibaba.otter.canal.protocol.CanalEntry.RowData;public class SimpleCanalClientExample {public static void main(String args[]) {// 创建链接CanalConnector connector CanalConnectors.newSingleConnector(new InetSocketAddress(192.168.2.223,11111), test, , );int batchSize 1000;int emptyCount 0;try {connector.connect();connector.subscribe(.*\\..*);connector.rollback();int totalEmptyCount 120;while (emptyCount totalEmptyCount) {Message message connector.getWithoutAck(batchSize); // 获取指定数量的数据long batchId message.getId();int size message.getEntries().size();if (batchId -1 || size 0) {emptyCount;System.out.println(empty count : emptyCount);try {Thread.sleep(1000);} catch (InterruptedException e) {}} else {emptyCount 0;// System.out.printf(message[batchId%s,size%s] \n, batchId, size);printEntry(message.getEntries());}connector.ack(batchId); // 提交确认// connector.rollback(batchId); // 处理失败, 回滚数据}System.out.println(empty too many times, exit);} finally {connector.disconnect();}}private static void printEntry(ListEntry entrys) {for (Entry entry : entrys) {if (entry.getEntryType() EntryType.TRANSACTIONBEGIN || entry.getEntryType() EntryType.TRANSACTIONEND) {continue;}RowChange rowChage null;try {rowChage RowChange.parseFrom(entry.getStoreValue());} catch (Exception e) {throw new RuntimeException(ERROR ## parser of eromanga-event has an error , data: entry.toString(),e);}EventType eventType rowChage.getEventType();System.out.println(String.format(gt; binlog[%s:%s] , name[%s,%s] , eventType : %s,entry.getHeader().getLogfileName(), entry.getHeader().getLogfileOffset(),entry.getHeader().getSchemaName(), entry.getHeader().getTableName(),eventType));for (RowData rowData : rowChage.getRowDatasList()) {if (eventType EventType.DELETE) {printColumn(rowData.getBeforeColumnsList());} else if (eventType EventType.INSERT) {printColumn(rowData.getAfterColumnsList());} else {System.out.println(-------gt; before);printColumn(rowData.getBeforeColumnsList());System.out.println(-------gt; after);printColumn(rowData.getAfterColumnsList());}}}}private static void printColumn(ListColumn columns) {for (Column column : columns) {System.out.println(column.getName() : column.getValue() update column.getUpdated());}}} 9、随便去instance配置的数据库修改数据查看控制台输出 10有问题可以去官网找找处理方法 https://github.com/alibaba/canal/issues
http://www.tj-hxxt.cn/news/222082.html

相关文章:

  • 宜兴建设局 网站wordpress用户推广插件
  • 网页设计与网站建设的概述百度账号快速注册
  • 网站返回500错误页面西安门户网站建设公司哪家好
  • 正版传奇手游官方网站深圳比较好的网站设计公司
  • 古色古香的网站模板网页网站建设的步骤流程
  • 自己怎么做外贸网站空间安卓程序下载安装
  • 怎么查网站到期时间网站建设公司响应式网站模板
  • 哪里可以上传自己的php网站wordpress新建页面源码
  • 学校网站 aspx源码服务器上网站打不开
  • 登陆工伤保险网站 提示未授权 怎么做百度热搜高考大数据
  • 网站快速建设程序陕西高速公路建设网站
  • 怎样做投资理财网站产品推销文案
  • 网站列表页框架布局原则物流公司在哪做网站
  • win7局域网网站开发哪些人是建网站的
  • 网站域名空间一年费用是多少钱制作h5网页流程及详细步骤
  • 网页设计作业个人网站全国建设部网站官网
  • 自己建设的网站怎么赚钱h5制作页面
  • 上海找工作网站网络推广网络营销软件
  • 上海网站建设网页制作免费网站友情链接
  • 做网站优化的好处专业3合1网站建设电话
  • 网站开发费怎么做会计分录东道设计一个logo多少钱
  • 携程网站的会计工作怎么做wordpress pc客户端
  • 自助下单网站直播间人气互动平台
  • 创建网站首页软件开发的一般流程
  • 学校网站群建设方案自己做网站导航页
  • 广州网站建设gzqiyiwordpress 客户
  • 皂君庙网站建设微软网站开发技术
  • wordpress+andriod新站优化
  • 建设网站不会写代码上海做网站建设
  • 有域名 如何免费建设网站茶叶建设网站市场分析