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

自己随便玩玩的网站怎么建设网站上线前营销推广工作准备

自己随便玩玩的网站怎么建设,网站上线前营销推广工作准备,网站的源代码有什么用,做区位分析的网站文章目录 1.MySQL主从复制原理。2.实现MySQL主从复制#xff08;一主两从#xff09;。3.基于MySQL一主两从配置#xff0c;完成MySQL读写分离配置。#xff08;MyCat2#xff09; 1.MySQL主从复制原理。 MySQL主从复制是一个异步的复制过程#xff0c;底层是基于Mysql数… 文章目录 1.MySQL主从复制原理。2.实现MySQL主从复制一主两从。3.基于MySQL一主两从配置完成MySQL读写分离配置。MyCat2 1.MySQL主从复制原理。 MySQL主从复制是一个异步的复制过程底层是基于Mysql数据库自带的 二进制日志 功能。就是一台或多台MySQL数据库slave即从库从另一台MySQL数据库master即主库进行日志的复制然后再解析日志并应用到自身最终实现 从库 的数据和 主库 的数据保持一致。MySQL主从复制是MySQL数据库自带功能无需借助第三方工具。 主从介绍 MySQL主从又叫Replication、AB复制。简单讲就是A与B两台机器做主从后在A上写数据另外一台B 也会跟着写数据实现数据实时同步。有这样几个关键点 1MySQL主从是基于binlog主上需开启binlog才能进行主从 2主从过程大概有3个步骤 3主将更改操作记录到binlog里 4从将主的binlog事件SQL语句 同步本机上并记录在relaylog里 5从根据relaylog里面的SQL语句按顺序执行。 二进制日志 二进制日志BINLOG记录了所有的 DDL数据定义语言语句和 DML数据操纵语言语句但是不包括数据查询语句。此日志对于灾难时的数据恢复起着极其重要的作用MySQL的主从复制 就是通过该binlog实现的。默认MySQL是未开启该日志的 主从作用 主从作用有实时灾备用于故障切换读写分离提供查询服务备份避免影响业务。 主从形式 基本原理 实验环境 基于centos7.9、mysql5.7 2.实现MySQL主从复制一主两从。 这里我借助docker来完成 ①拉取mysql镜像并运行三个mysql容器 mysql1为主 mysql2和mysql3为从 docker pull mysql:5.7 #拉取mysql镜像 docker run --name mysql1 -p 3307:3306 -e MYSQL_ROOT_PASSWORD123456 -d mysql:5.7 --lower_case_table_names1 docker run --name mysql2 -p 3308:3306 -e MYSQL_ROOT_PASSWORD123456 -d mysql:5.7 --lower_case_table_names1 docker run --name mysql3 -p 3309:3306 -e MYSQL_ROOT_PASSWORD123456 -d mysql:5.7 --lower_case_table_names1②修改mysql配置文件 将docker上的文件拷贝出来方便修改 mkdir /mysqlms cd /mysqlms docker cp mysql1:/etc/my.cnf mysql1.cnf docker cp mysql2:/etc/my.cnf mysql2.cnf docker cp mysql3:/etc/my.cnf mysql3.cnf修改主的配置文件 mysql1 在[mysqld]下添加 server-id1 #服务器的标识 log-binmaster.bin #打开日志文件功能 修改两个从的配置文件 mysql2 在[mysqld]下添加 server-id2mysql3 在[mysqld]下添加 server-id3③配置文件修改后复制到容器里面 docker cp mysql1.cnf mysql1:/etc/my.cnf docker cp mysql2.cnf mysql2:/etc/my.cnf docker cp mysql3.cnf mysql3:/etc/my.cnf④启动mysql [rootwww mysqlms]# docker start mysql1 mysql2 mysql3 mysql1 mysql2 mysql3 用Navicat测试连接 ⑤进入主机里面执行相关配置 [rootwww mysqlms]# docker exec -it mysql1 bash bash-4.2# mysql -uroot -p123456#创建用户 mysql create user rep% identified by 123456; Query OK, 0 rows affected (0.00 sec) #给该用户授予权限 mysql grant replication slave on *.* to rep%; Query OK, 0 rows affected (0.00 sec) #刷新权限 mysql flush privileges; Query OK, 0 rows affected (0.01 sec) ⑥ 进入从机里面执行相关配置mysql2 和mysql3配置相同 这里以mysql2为例 查看主的mysql1的状态 [rootwww ~]# docker exec -it mysql2 bash bash-4.2# mysql -uroot -p123456 mysql change master to - master_host192.168.15.136,master_port3307, - master_userrep, - master_password123456, - master_log_filemaster.000001, - master_log_pos745; Query OK, 0 rows affected, 2 warnings (0.07 sec)启动slave并查看状态 成功标志 Slave_IO_Running: Yes Slave_SQL_Running: Yes⑦测试 在mysql1 里面创建数据库看mysq2、mysql3 有没有复制过去 mysql1上 mysq2、mysql3 上 主从复制成功 3.基于MySQL一主两从配置完成MySQL读写分离配置。MyCat2 前提先搭建好MySQL的主从配置 首先确保有jdk环境 [roots2 ~]# java -version java version 1.8.0_361 Java(TM) SE Runtime Environment (build 1.8.0_361-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode) 配置mycat环境 #安装程序包 wget -c http://dl.mycat.org.cn/2.0/install-template/mycat2-install-template-1.21.zip #jar包 wget -c http://dl.mycat.org.cn/2.0/1.21-release/mycat2-1.21-release-jar-with-dependencies.jar解压到data目录下 [roots2 ~]# mkdir /data [roots2 ~]# unzip mycat2-install-template-1.21.zip -d /data修改权限 把bin目录的文件加执行权限 cd /data/mycat/bin chmod x *把所需的jar复制到mycat/lib目录 cp ~/mycat2-1.21-release-jar-with-dependencies.jar /data/mycat/lib/MyCat的目录结构 ll /data/mycat/ total 8 drwxr-xr-x 2 root root 4096 Mar 5 2021 bin drwxr-xr-x 9 root root 275 Mar 5 2021 conf drwxr-xr-x 2 root root 4096 Mar 20 14:11 lib drwxr-xr-x 2 root root 6 Mar 5 2021 logsbin 执行命令的目录 conf 配置文件 lib 依赖包 logs 日志包 启动一个3306的MySQL 因为mycat代理连接启动时需要有一个默认的数据源所以我们在启动的时候先为其准备一个数据源 接下来我们使用docker启动 # 配置docker加速 sudo mkdir -p /etc/docker # tee /etc/docker/daemon.json -EOF { registry-mirrors: [https://rvq9mjyt.mirror.aliyuncs.com] } EOF # systemctl daemon-reload # systemctl restart docker # docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD123456 -d mysql:5.7 --lower_case_table_names1 配置物理库地址 在启动之前我们要配置物理库的地址要不然MyCAT启动就会报错。 [rootlocalhost ~]# vim /data/mycat/conf/datasources/prototypeDs.datasource.json {dbType:mysql,idleTimeout:60000,initSqls:[],initSqlsGetConnection:true,instanceType:READ_WRITE,maxCon:1000,maxConnectTimeout:3000,maxRetryCount:5,minCon:1,name:prototypeDs,password:123456,type:JDBC,url:jdbc:mysql://localhost:3306?useUnicodetrueserverTimezoneAsia/ShanghaicharacterEncodingUTF-8,user:root,weight:0 } 配置说明 1dbType数据源类型 2name数据源名字 3password后端MySQL的密码 4url后端MySQL的JDBC连接地址 5user后端MySQL的用户名 6weight配置数据源负载均衡的使用权重 启动MyCat cd /data/mycat/bin ./mycat start 额外介绍 ./mycat console 前台运行 ./mycat install 添加到系统自动启动 ./mycat remove 取消随系统自动启动 ./mycat restart 重启 ./mycat pause 暂停 ./mycat status 查看启动状态 查看logs/wrapper.log文档 如果出现以下的信息就说明启动成功了。 cat /data/mycat/logs/wrapper.log** 连接MyCAT** 用Navicat连接 也可在虚拟机上看是否连接成功 # yum install -y mariadb # mysql -uroot -p123456 -P8066 [rootnode4 bin]# mysql -uroot -p123456 -P8066 -h127.0.0.1 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 71 Server version: 5.7.33-mycat-2.0 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type help; or \h for help. Type \c to clear the current input statement. MySQL [(none)] \q ByeMyCAT2的主从配置 在上面的操作中我们已经搭建好MySQL的主从配置登录MyCAT 2在MyCAT2里面操作也就是连接8066这个端口。 目标将mysql1主设置为可读写的数据源将mysql2从和mysql3从设置为只读的数据源。 以下操作均在Navicat上执行但实际修改和创建的是/data/mycat/下的文件 创建数据源 选择mycat数据库新建查询 # 添加读写的数据源 /* mycat:createDataSource{ dbType:mysql, idleTimeout:60000, initSqls:[], initSqlsGetConnection:true, instanceType:READ_WRITE, maxCon:1000, maxConnectTimeout:3000, maxRetryCount:5, minCon:1, name:mysql1, password:123456, type:JDBC, url:jdbc:mysql://127.0.0.1:3307/db1?useUnicodetrueserverTimezoneUTCcharacterEncodingUTF-8, user:root, weight:0 } */;# 添加读的数据源/* mycat:createDataSource{ dbType:mysql, idleTimeout:60000, initSqls:[], initSqlsGetConnection:true, instanceType:READ, maxCon:1000, maxConnectTimeout:3000, maxRetryCount:5, minCon:1, name:mysql2, password:123456, type:JDBC, url:jdbc:mysql://127.0.0.1:3308/db1?useUnicodetrueserverTimezoneUTCcharacterEncodingUTF-8, user:root, weight:0 } */;/* mycat:createDataSource{ dbType:mysql, idleTimeout:60000, initSqls:[], initSqlsGetConnection:true, instanceType:READ, maxCon:1000, maxConnectTimeout:3000, maxRetryCount:5, minCon:1, name:mysql3, password:123456, type:JDBC, url:jdbc:mysql://127.0.0.1:3309/db1?useUnicodetrueserverTimezoneUTCcharacterEncodingUTF-8, user:root, weight:0 } */; 查询数据源 /* mycat:showDataSources{} */创建集群 /*! mycat:createCluster{ clusterType:MASTER_SLAVE, heartbeat:{ heartbeatTimeout:1000, maxRetry:3, minSwitchTimeInterval:300, slaveThreshold:0 }, masters:[ mysql1 ], maxCon:2000, name:prototype, readBalanceType:BALANCE_ALL, replicas:[ mysql1,mysql2 ], switchType:SWITCH } */;查询集群 /* mycat:showClusters{} */创建逻辑库 CREATE DATABASE db1 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;此时/data/mycat/conf/schemas/db1.schema.json文件被创建 修改逻辑库的数据源 修改/data/mycat/conf/schemas/db1.schema.json 在里面添加 “targetName”:“prototype”, [rootlocalhost conf]# vim /data/mycat/conf/schemas/db1.schema.json {customTables:{},globalTables:{},normalProcedures:{},normalTables:{},schemaName:db1,shardingTables:{},targetName:prototype,views:{} } 测试读写分离是否成功(在MyCAT里面测试) 重启MyCAT因为修改了数据源文件 [rootlocalhost conf]# cd /data/mycat/bin/ [rootlocalhost bin]# ./mycat restart Stopping mycat2... Stopped mycat2. Starting mycat2... [rootlocalhost bin]# 在MyCAT里面创建一个sys_user表 use db1; CREATE TABLE SYS_USER( ID BIGINT PRIMARY KEY, USERNAME VARCHAR(200) NOT NULL, ADDRESS VARCHAR(500)); 通过注释生成物理库和物理表 如果物理表不存在在 MyCAT2 能正常启动的情况下根据当前配置自动创建分片表全局表和物理 表 /* mycat:repairPhysicalTable{} */;查看后端物理库发现物理库和物理表都生成了。 在MyCAT里面向sys_user表添加一条数据 use db1; INSERT INTO SYS_USER(ID,USERNAME,ADDRESS) VALUES(1,XIAOMING,WUHAN);修改MySQL里面数据的让数据不一样(仅用于测试验证) mysql1上将ADDRESS字段修改成mysql1 mysql2上将ADDRESS字段修改成mysql2 mysql3上将ADDRESS字段修改成mysql3 在MyCAT里面查询数据会发现每次查询的结果不一样 MyCAT2主从搭建完成。
http://www.w-s-a.com/news/386026/

相关文章:

  • 东原ARC网站建设公司合肥seo网站推广外包
  • 那个网站是做房产中介的网站制作软件小学
  • 做网页怎么建站点视频解析网站
  • 做网站的系统设计网站设计论文前言
  • 做外贸网站多久更新汕头市建设局网站首页
  • 如何建设专业化的网站手机管理网站模板
  • 花生壳做网站如何用腾讯云做网站
  • 搭建集团网站开发app需要哪些软件
  • 网站建设 中企动力福州阀门wordpress 多说评论
  • php网站集成支付宝接口下载免费网络软件
  • 卡盟网站是怎么建设的用花生壳做网站速度可以吗
  • 杭州物联网前十名公司优秀seo平台
  • 网新中英企业网站管理系统wordpress 登录 缓存
  • wordpress模板建站教程wordpress添加广告位手机自适应
  • h5游戏平台入口优化是什么梗
  • 建设银行对公网站打不开网络推广活动方案主题和思路
  • 茶叶网站开发目的和意义网页设计需要考什么证
  • 高端企业网站建设公司怎么做实用性建设网站都需要哪些
  • 网站备案必须要幕布吗易企秀网站怎么做轮播图
  • 南昌网站排名优化四线城市网站建设方向及营利点
  • 做网站需要钱吗unity 做网站
  • 呼伦贝尔市规划建设局网站wordpress怎么考别人的
  • 免备案自助建站网站成都神速建站
  • 怎样编写app软件快速刷排名seo软件
  • 江苏做家纺的公司网站宣传型企业网站
  • 网站网上商城建设外国一些做环保袋的网站
  • 做空气开关那个网站推广比较好建站技术有哪些
  • 做网站前需要做什么准备wordpress图片云储存
  • 查楼盘剩余房源的网站地方网站推广
  • 农家乐网站建设方案创意平面设计公司简介