欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mycat 安装及配置

程序员文章站 2022-05-27 23:44:23
...

目录

安装

命令

配置


安装

下载 Mycat-1.6.7.6-linux.tar.gz

 

解压并移动至 /usr/local/

sudo tar zxvf Mycat-1.6.7.6-linux.tar.gz
sudo mv mycat /usr/local/

命令

启动mycat

sudo /usr/local/mycat/bin/mycat start

Mycat 安装及配置

查看mycat状态

sudo /usr/local/mycat/bin/mycat status

停止mycat

sudo /usr/local/mycat/bin/mycat stop

重启mycat

sudo /usr/local/mycat/bin/mycat restart

连接mycat

mysql -uroot -p123456 -h127.0.0.1 -P8066

红框内容代表mycat连接成功

Mycat 安装及配置

 

配置

server.xml

主要配置mycat服务的参数,比如端口号,myact用户名和密码使用的逻辑数据库等。修改以下部分

<user name="root" defaultAccount="true">
		<property name="password">111222</property>
		<property name="schemas">testdb</property>
		<property name="defaultSchema">testdb</property>

		<!--No MyCAT Database selected 错误前会尝试使用该schema作为schema,不设置则为null,报错 -->
		<!-- 表级 DML 权限设置 -->
		<!--
		<privileges check="false">
			<schema name="TESTDB" dml="0110" >
				<table name="tb01" dml="0000"></table>
				<table name="tb02" dml="1111"></table>
			</schema>
		</privileges>
		 -->
	</user>
    
	<user name="user">
		<property name="password">111222</property>
		<property name="schemas">testdb</property>
		<property name="readOnly">true</property>
		<property name="defaultSchema">testdb</property>
	</user>

rule.xml

主要配置路由策略,主要有分片的片键,拆分的策略(取模还是按区间划分等)

 

schema.xml

主要配置数据库的信息,例如逻辑数据库名称,物理上真实的数据源以及表和数据源之间的对应关系和路由策略等。修改以下部分

<schema name="testdb" checkSQLschema="true" sqlMaxLimit="100" randomDataNode="dn1">
    <table name="tb1" primaryKey="id" dataNode="dn1,dn2" rule="sharding-by-intfile" autoIncrement="true" fetchStoreNodeByJdbc="true"></table>
</schema>

<dataNode name="dn1" dataHost="localhost1" database="db1" />
<dataNode name="dn2" dataHost="localhost1" database="db2" />
<dataNode name="dn3" dataHost="localhost1" database="db3" />
<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" writeType="0"  dbType="mysql" dbDriver="jdbc" switchType="1"  slaveThreshold="100">
    <heartbeat>select user()</heartbeat>
	<writeHost host="hostM1" url="jdbc:mysql://localhost:3306" user="root" password="root"> </writeHost>
</dataHost>