学习成长

提供在线文档,方便大家学习


mycat安装配置修改以及启动检验

<h4>1.下载mycat以及介绍mycat请到网址:<a href="http://www.mycat.io/">http://www.mycat.io/</a></h4> <p>那里有Mycat-server-1.6.6-release 版本发布 会有几个版本 找到适合自己的版本 在这前提,首先你要在具体的虚拟机安装数据库,并且将各个数据库配置成主从。 <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/fc773c402685454e019429e9b8eb09d1?showdoc=.jpg" alt="" /></p> <p>如虚拟机40是宿主机配置mycat 41,42,44,45都要安装数据库 如果是配置安装好好一台虚拟机 可以拷贝替换另一台虚拟机 更改ip地址即可 在进行主从配置 具体看主从配置 并且40,42,44,45配置成主从 <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/957935eae27309fab02bea9b384c565e?showdoc=.jpg" alt="" /> 将文件下载了 用ssh工具 放在/usr/loclal/src/ 下面 解压文件</p> <h4>2.安装mycat</h4> <p>tar zxvf Mycat-server-1.6.6.1-release-20181031195535-linux.tar.gz 然后将解压的复制到   /usr/local/mycat 目录 cp -r Mycat-server-1.6.6.1-release-20181031195535-linux.tar.gz  /usr/local/mycat</p> <h4>3.添加组和用户</h4> <p>groupadd mycat adduser -r -g mycat mycat chown -R mycat.mycat /usr/local/mycat //修改mycat目录所属mycat用户</p> <h4>4.配置mycat文件的conf的server.xml</h4> <p>cd /usr/local/mycat/conf vim server.xml 我们改的就是两个端口一个是9066 一个就是8066</p> <property name="serverPort">3306</property> <property name="managerPort">3307</property> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/ec98f0bf71e35fa4f9b758254a928776?showdoc=.jpg" alt="" /> 还有用户 密码 项目名字</p> <pre><code>&lt;user name="root"&gt; &lt;property name="password"&gt;kyd8899&lt;/property&gt; &lt;property name="schemas"&gt;QIWUIOT&lt;/property&gt; &lt;property name="readOnly"&gt;false&lt;/property&gt; &lt;!-- 表级 DML 权限设置 --&gt; &lt;!-- &lt;privileges check="false"&gt; &lt;schema name="TESTDB" dml="0110" &gt; &lt;table name="tb01" dml="0000"&gt;&lt;/table&gt; &lt;table name="tb02" dml="1111"&gt;&lt;/table&gt; &lt;/schema&gt; &lt;/privileges&gt; --&gt; &lt;/user&gt;</code></pre> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/65d1b2ef78dfc7c2cf67c94175f2c068?showdoc=.jpg" alt="" /></p> <h4>5.schema.xml</h4> <p>修改位置红色圈(table里面一样的同理,这里就不一个一个圈) table里面的name就是每个表根据自己需要划分规则,这里统一用mod-long <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/1c1c14d3bd4e3cb0b9502fdec264e4ad?showdoc=.jpg" alt="" /></p> <p>修改的位置已经划清楚 <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/3b97d9ad9f21ff95881d3b154cead9c1?showdoc=.jpg" alt="" /></p> <p>schema.xml中的rule是rule.xml里面众多分配规则的一种 、 这样的配置与前一个示例配置改动如下: 删除了table分配的规则,以及datanode只有一个 datahost有2台,但是writehost总添加了readhost,balance改为1,表示读写分离。 以上配置达到的效果就是102.168.1.41为主库,192.168.1.42为从库。 以上配置达到的效果就是102.168.1.44为主库,192.168.1.45为从库。</p> <h4>6.rule.xml</h4> <p>而rule.xml中的规则默认的mod-long是三个 也即是dataNode的数量我们这里是切分为两个修改为2 <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/ee28e798c06f9cc98b03885c2ecf9430?showdoc=.jpg" alt="" /></p> <h1>这些配置好之后</h1> <h4>启动mycat</h4> <p>到mycat bin下 [root@Mycat-node ~]# cd /data/mycat/bin/ [root@Mycat-node bin]# [root@Mycat-node bin]# ./mycat start #开启 [root@Mycat-node bin]# ./mycat stop #关闭 [root@Mycat-node bin]# ./mycat restart #重启 [root@Mycat-node bin]# ./mycat status #查看启动状态 [root@Mycat-node bin]# ./mycat console #前台运行 [root@Mycat-node bin]# ./mycat pause #暂停 如果在启动时发现异常,在logs目录中查看日志。 mycat启动后,执行命令不成功,可能实际上配置有错误,导致后面的命令没有很好的执行。 如果在启动时发现异常,在logs目录中查看日志。 [root@Mycat-node ~]# cd /data/mycat/logs/ [root@Mycat-node logs]# ls 2018-07 mycat.log mycat.pid wrapper.log</p> <ul> <li>wrapper.log 为程序启动的日志,启动时的问题看这个</li> <li>mycat.log 为脚本执行时的日志,SQL脚本执行报错后的具体错误内容,查看这个文件。mycat.log是最新的错误日志,历史日志会根据时间生成目录保存。 mycat启动后,执行命令不成功,可能实际上配置有错误,导致后面的命令没有很好的执行。 配置好之后输入 netstat -antpl 会有以下效果 <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/a4d21d3bdfda8cb1be40472c99b7e50f?showdoc=.jpg" alt="" /> 有ESTABKISHED和LISTEN是正常 如果出现 TIME_WAIT问题 编辑vim /etc/sysctl.conf 添加以下内容 net.ipv4.tcp_syn_retries=2 net.ipv4.tcp_synack_retries=2 表示当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时,改为300秒 net.ipv4.tcp_keepalive_time=1200 net.ipv4.tcp_orphan_retries=3 表示如果套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间 net.ipv4.tcp_fin_timeout=30 表示SYN队列的长度,默认为1024,加大队列长度为8192,可以容纳更多等待连接的网络连接数。 net.ipv4.tcp_max_syn_backlog = 4096 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭 net.ipv4.tcp_syncookies = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭 net.ipv4.tcp_tw_reuse = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭 net.ipv4.tcp_tw_recycle = 1 减少超时前的探测次数 net.ipv4.tcp_keepalive_probes=5 优化网络设备接收队列 net.core.netdev_max_backlog=3000 通过navtivecat去连接数据库 测试是否可以打开数据库的具体的表 <h4>那么你的真实的数据库的 那个41的 和那个44的就是做主的数据库要进行创建表要一个一个的分别与schema.xml中table的表一个个对应上</h4></li> </ul>

页面列表

ITEM_HTML