319天前2020-12-09 18:13:24 |    抢沙发  452 
今天公司新开了2台新数据库服务器,环境是centos8+mysql8然后我需要给部署上mycat这个活儿我很久之前做过,但是现在一点儿印象都没有了,看我之前的博客页有对mycat的描述,但是那个写的都是各个配置项的解释,我也不知道当初为什么会发这些配置项,而不是发具体操作,我自己也很莫名,于是网上找了找,总结了一下记录下来方便以后拿来就用和提供给有需求的人。

mycat

这里我大概讲一下流程,这样后面操作心里就有数了。

首先 mycat下载下来就是可以直接使用的绿色软件包,但是他需要java环境才能运行,如果没有就安装它。

另外要让它跑起来著需要配置2个文件就好了,另外多个数据库的数据同步需要使用mysql自带的主从数据同步功能来实现。

第一个是conf/server.xml 文件,里面只要配置连接mycat的账户信息

第二个是conf/server.xml文件,里面需要配置咱们的集群结构和主从关系以及实际数据库各个节点的登陆信息。

配置完成后就可以正常启动使用了,本文最后还会讲怎么添加服务和开启启动。


好了,有了上面的铺垫我相信后面就很好操作了。

假如我的mycat放在/目录下

编辑添加登陆信息

vim /mycat/conf/server.xml

在server.xml中你需要把原来的用户配置都注释掉,然后添加自己的配置信息,当然你也可以直接修改。

1,搜索 <property name="nonePasswordLogin">

把里面的0改为1

2,搜索 <property name="fakeMySQLVersion">

去掉注释然后设置一下你的模拟mysql版本号

3,搜索 <user name="root" defaultAccount="true">

把它的一整个段都注释掉

4,搜索 <user name="user">

同样把它整个段都注释掉

然后在它下面新建自己的用户登陆配置信息


 <user name="mycatuser" defaultAccount="true">
                <property name="password">mycatuserpassword</property>
                <property name="schemas">mycatdb</property>
</user>
注释:1,mycatuser替换成你自己的mycat连接用户名,mycatuserpassword为连接密码,mycatdb为连接数据库名。


用户可以设置多个,具体详情可以看配置文件上面有详细说明


编辑集群配置信息


vim /mycat/conf/schema.xml
这里我建议先备份一下scheam.xml文件以便以后查看,然后清空配置文件重新写入配置文件,因为重新写配置文件结构清晰没有注释,很和谐精简。


写入内容:


<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!--定义一个数据库mycatdn 并指定主机为dn1-->
<schema name="mycatdb" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"></schema>
<!--定义一个dn1的主机并指定链接到localhost1-->
<dataNode name="dn1" dataHost="localhost1" database="mycatdb" />

<!--定义localhost1主机-->
<dataHost name="localhost1" maxCon="65535" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="-1"  slaveThreshold="100">

      <heartbeat>select user()</heartbeat>
      <!--定义写库-->
      <writeHost host="hostM1" url="主服务器IP:3306" user="主服务器登陆用户名" password="主服务器登陆密码">
      <!--定义读库-->
      <readHost host="hostS1" url="从服务器IP:3306" user="从服务器登陆用户名" password="从服务器登陆密码" />
      </writeHost>
</dataHost>
<!--定义localhost1主机完-->
</mycat:schema>


要确保你的服务器配置都是正确的,否则肯定会出问题的。

然后保存退出,

然后可以启动一下服务测试一下

cd /mycat/bin/
./mycat console
如果启动没问题就OK 否则检查一下java有没有安装。

安装java

yum -y install java-11-openjdk*
完成后再重新运行服务试试

这里假设你已经正常启动了,

然后我们登陆测试。

mysql -u mycatuser -p -h 127.0.0.1 -P 8066
然后输入设置的密码,就可以正常登录了,进去以后和使用mysql是一样的操作。

至于数据同步的话主要采用mysql自己的主从同步功能。具体文章请看我的响应博文。



发表评论

暂无评论

登录

忘记密码 ?

切换登录

注册

扫一扫二维码分享