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

新手网站建设模板下载ios移动网站开发详解 pdf

新手网站建设模板下载,ios移动网站开发详解 pdf,一个网络空间如何做两个网站,青海建设厅质检站网站读写分离 互相主从架构注意点 双主双从架构注意点 一主多从架构注意点 读写分离概念部署jdk环境上传文件,解压文件配置环境变量 部署mycat环境mycat配置文件给所有数据库创建访问用户配置 server.xml配置 schema.xml启动mycat查看启动端口日志负载均衡测试 遇到的问…

读写分离

    • 互相主从
      • 架构
      • 注意点
    • 双主双从
      • 架构
      • 注意点
    • 一主多从
      • 架构
      • 注意点
  • 读写分离
      • 概念
      • 部署jdk环境
        • 上传文件,解压文件
        • 配置环境变量
      • 部署mycat环境
      • mycat配置文件
        • 给所有数据库创建访问用户
        • 配置 server.xml
        • 配置 schema.xml
        • 启动mycat
        • 查看启动端口
        • 日志
        • 负载均衡
        • 测试
      • 遇到的问题
        • 能进mycat但是进不去TESTDB
        • 调整mysql最大连接数
        • 在mycat中use TESTDB特别卡
        • 测试负载均衡时候,0查看到的是主2,1查看到的是主1,从1从2(基于双主双从做的读写分离)
        • 更改假用户登录mycat后查看的数据库名

互相主从

架构

iprole
ip1ip2的主库、ip2的从库
ip2ip1的主库、ip2的从库

注意点

两个服务器上都要创建远程登录拷贝用户

两个数据库都在写入数据,可能会造成主键冲突,可以在my.cnf配置文件中写入

auto_increment_increment=2    //设置初始步长值 
auto_increment_offset=1       //设置偏移量

这样就可以避免主键冲突

双主双从

架构

iprole
ip1ip3和ip2的主库,ip2的从库
ip2ip4和ip1的主库,ip1的从库
ip3ip1的从库
ip4ip2的从库

注意点

因为ip1和ip2的主库要拷贝多份二进制binlog日志,在my.cnf里添加参数

log-slave-updates //binlog可以多次拷贝,主库复制的内容也会写入从库binlog

一主多从

架构

iprole
ip1ip2和ip3的主库
ip2ip1的从库
ip3ip1的从库

注意点

因为ip1的主库要拷贝多份二进制binlog日志,在my.cnf里添加参数

log-slave-updates //binlog可以多次拷贝,主库复制的内容也会写入从库binlog

读写分离

概念

一主一从的基础上实现读数据和写数据访问不同的服务器

Mycat 是一个开源的数据库系统,但是由于真正的数据库需要存储引擎,而Mycat并没有存储引擎,所以并不是完全意义的数据库系统,Mycat 是数据库中间件,就是介于数据库与应用之间,进行数据处理与交互的中间服务。MyCAT是使用JAVA语言进行编写开发,使用前需要先安装JAVA运行环境(JRE),由于MyCAT中使用了JDK7中的一些特性,所以要求必须在JDK7以上的版本上运行。

部署jdk环境

上传文件,解压文件
tar -xf jdk-8u181-linux-x64.tar.gz
配置环境变量
vim /etc/profile.d/java.sh     //java环境配置export JAVA_HOME=/opt/jdk1.8.0_211
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarsource /etc/profile.d/java.sh   //使环境变量生效

部署mycat环境

tar xf Mycat-server-1.6.5-release-20180122220033-linux.tar.gz
vim /etc/profile     //环境配置export JAVA_HOME=/opt/mycat
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarsource /etc/profile    //重启环境变量

mycat配置文件

mycat/conf/server.xml      //定义用户以及系统相关变量,如端口等。其中用户信息是前端应用程序连接mycat的用户信息,简单来说,就是假的信息mycat/conf/schema.xml       //定义逻辑库,表、分片节点等内容。
给所有数据库创建访问用户
grant all on *.* to '用户名'@'%' identified by "密码";
配置 server.xml

修改配置文件前备份一份

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
<!-- 登录mycat的用户和密码--><user name="root" defaultAccount="true"><property name="password">0</property>
<!-- 登录mycat的用户看到的数据库名--><property name="schemas">TESTDB</property></user><user name="user"><property name="password">user</property><property name="schemas">TESTDB</property><property name="readOnly">true</property></user>
</mycat:server>
配置 schema.xml

修改配置文件前备份一份

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!--逻辑库和分表设置,与server.xml一致--><schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"></schema>
<!--数据节点,database是真实存在的组,真组和假组在这里建立连接--><dataNode name="dn1" dataHost="localhost1" database="stu" /><!--主机组,注意name和数据节点的dataHost相同即可,balance负载均衡--><dataHost name="localhost1" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"><!--健康检查--><heartbeat>select user()</heartbeat><!--读写配置,此处以双主双从举例,此处的用户数据库必须存在-->          <writeHost host="hostM1" url="主1ip:端口" user="用户" password="密码"><readHost host="hostS1" url="从1ip:端口" user="用户" password="密码"/></writeHost><writeHost host="hostM2" url="主2ip:端口" user="用户" password="密码"><readHost host="hostS2" url="从2ip:端口" user="用户" password="密码"/></writeHost></dataHost>
</mycat:schema>

在这里插入图片描述

启动mycat
mycat start
查看启动端口
ss -nplt
端口关注8066
日志
mycat/logs     //日志目录drwxr-xr-x 2 root root  4096 12月 26 10:24 2023-12       //打包的日志文件
-rw-r--r-- 1 root root 23800 12月 26 11:19 mycat.log     //mycat的启动日志文件
-rw-r--r-- 1 root root     5 12月 26 10:24 mycat.pid     //启动程序的pid
-rw-r--r-- 1 root root 72956 12月 26 10:24 wrapper.log    //错误日志
负载均衡
balance 属性
负载均衡类型,目前的取值有 3 种:
1. balance="0", 不开启读写分离机制,所有读操作都发送到当前可用的 writeHost 上。
2. balance="1", 全部的 readHost 与 stand by writeHost 参与 select 语句的负载均衡,简单的说,当双主双从模式(M1->S1,M2->S2,并且M1与M2互为主备),正常情况下,M2,S1,S2 都参与 select 语句的负载均衡。
4. balance="2", 所有读操作都随机的在 writeHost、readhost 上分发。
5. balance="3", 所有读请求随机的分发到 writerHost 对应的 readhost 执行,writerHost 不负担读压力,注意 balance=3 只在 1.4 及其以后版本有,1.3 没有。writeType 属性
负载均衡类型
1. writeType="0", 所有写操作发送到配置的第一个 writeHost,第一个挂了切到还生存的第二个writeHost,重新启动后已切换后的为准.
2. writeType="1",所有写操作都随机的发送到配置的 writeHost,1.5 以后废弃不推荐。
测试
mysql -uroot -p0 -hmycat -P8066 TESTDB    //此处登录的ip地址是mycat存在的主机,登录的用户是在mycat/conf/server.xml中写的假的数据库登录信息关闭双主双从的主从复制,服务器分别创建数据库,用负载均衡,进行检查
0:只能查看正在写的数据库
1:除了正在写的数据库都有
2:所有数据库
3:所有读的数据库

遇到的问题

能进mycat但是进不去TESTDB
问题一
一般情况是数据库的用户授权或者创建有问题若是多主数据库的情况,进不去数据库时候,会一直建立连接,用户问题解决后
调整mysql最大连接数
max-connections=2000  //增加mysql最大连接数的配置,在my.cnf更改
在mycat中use TESTDB特别卡
问题一
schema.xml配置文件中
<!--数据节点,database是真实存在的组,真组和假组在这里建立连接-->
<dataNode name="dn1" dataHost="localhost1" database="stu" />
数据节点database的数据库可能在主从架构中不存在问题二
创建用户和库的时候,先创的用户,后创建的库,用户没有授权这个库,重新对用户进行授权即可
测试负载均衡时候,0查看到的是主2,1查看到的是主1,从1从2(基于双主双从做的读写分离)
主1数据库的最大连接数连满了,写的目标数据库变成主2的数据库
重启数据库即可解决或者设置数据库的最大连接数
更改假用户登录mycat后查看的数据库名
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
<!-- 登录mycat的用户和密码--><user name="root" defaultAccount="true"><property name="password">0</property>
<!-- 登录mycat的用户看到的数据库名--><property name="schemas">nan</property></user><user name="user"><property name="password">user</property><property name="schemas">TESTDB</property><property name="readOnly">true</property></user>
</mycat:server>schema.xml
<schema name="nan" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">然后就起不来了,问题在假库的配置文件,user的标签内识别不到,不用user标签,将标签删除,如:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
<!-- 登录mycat的用户和密码--><user name="root" defaultAccount="true"><property name="password">0</property>
<!-- 登录mycat的用户看到的数据库名--><property name="schemas">nan</property></user>
</mycat:server>
重启,一般情况就起来了
http://www.yayakq.cn/news/537447/

相关文章:

  • 静态网站如何建设企业网站建设的一般要素
  • h5网站程序想做一个能上传视频的网站怎么做
  • 鹤壁做网站优化天津 工程 信息
  • 你认为视频网站如何做推广站长工具seo综合查询腾讯
  • 贵阳网站备案网站建设制作设计营销 上海
  • 直播网站开发多少钱制作公司网站视频
  • 沧州网站建设wordpress微信缩图
  • 可以放友情链接的网站品牌网络营销成功案例
  • 搭建网站难吗qq 互联网站开发代码
  • 项目网站设计长春几个火车站啊
  • 制作网站的详细步骤asp做网站基本过程
  • 南宁电商网站建设山东省和住房城乡建设厅网站首页
  • 网站验收标准网站备案幕布 下载
  • 凡科可以做淘客网站吗软件工程大学排名
  • 网站管理程序WordPress 文章 iframe
  • 对于网站运营应该如何做网站开发脚本解析器
  • 云南网站搭建广州网页设计机
  • 专业建站公司费用做外贸的如何上国外网站
  • 网站被做跳转wordpress 采集主题
  • 做漫画网站 漫画哪找知名中文网站建设
  • 重庆智能网站建设多少钱怎么下载建设银行网站
  • 物流公司网站设计淘城汇网站谁做的
  • 网站被采集 更换模板做网站需要什么配置
  • 外卖网站那家做的好处大连网站制作赞ls15227
  • 郑州网站设计哪家公司好百度站长工具网站认证
  • 新市区做网站二级域名的网站备案
  • 洛阳网站开发培训哈尔滨网站建设网站
  • 网站关键词连接符山西科技网站建设
  • 微信 网站设计模板网页的构成
  • 南宁培训网站建设晋江网站建设价格多少