1. Trabajo de preparación:
Dirección de descarga:
http://dl.mycat.org.cn/2.0/install-template/mycat2-install-template-1.21.zip
http://dl.mycat.org.cn/2.0/1.21 -release/
archivo descargado:
descomprima el archivo mycat2-install-template-1.21, copie mycat2-1.21-release-jar-with-dependencies2022-5-5.jar en mycat\lib: 2.
Modificación de la configuración de Mycat
1. Ubicación del archivo de configuración de Mycat:
Abra el archivo de configuración prototipoDs.datasource.json:
{
"dbType":"mysql",
"idleTimeout":60000,
"initSqls":[],
"initSqlsGetConnection":true,
"instanceType":"READ_WRITE",
"maxCon":1000,
"maxConnectTimeout":3000,
"maxRetryCount":5,
"minCon":1,
// 数据源名称,不用修改
"name":"prototypeDs",
//数据库密码
"password":"lll123",
"type":"JDBC",
//连接master数据库
"url":"jdbc:mysql://localhost:3306/mysql?useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8",
//数据库用户名
"user":"root",
"weight":0
}
Una vez iniciado mycat, creará su propia biblioteca mycat para almacenar previamente cierta información que mycat necesita usar. Mycat se creará solo. Si la creación falla, puede crear manualmente la base de datos y luego iniciarla nuevamente .
1. Inicie mycat:
mycat install
mycat start
mycat status
2. Inicie sesión: inicie sesión en mycat, nombre de usuario predeterminado: contraseña de root: 123456
3. Cree una biblioteca lógica
Crear base de datos test_mycat en Mycat
create database test_mycat;
Una vez creada correctamente la biblioteca lógica, el archivo de configuración se genera automáticamente.
La biblioteca principal creó la base de datos correspondiente.
Abra el archivo test_mycat.schema.json
{
"customTables":{},
"globalTables":{},
"normalProcedures":{},
"normalTables":{},
//逻辑库名,也是mysql中对应的物理数据库名
"schemaName":"test_mycat",
//集群
"targetName":"mycatCluster",
"shardingTables":{},
"views":{}
}
Explicación:
customTables coloca la configuración de la tabla predeterminada de mycat.
globalTables coloca la configuración de la tabla global.
shardingTables coloca la configuración de la tabla fragmentada.
normalTables coloca la configuración de la tabla normal.
4. Configurar la fuente de datos
Inicie sesión en mycat con cmd o use la interfaz de línea de comando después de navegar para conectarse a mycat e ingrese:
Comando comentario para agregar la fuente de datos principal:
/*+ mycat:createDataSource{ "name" :"mycatWrite" , "url":"jdbc:mysql://localhost:3306/test_mycat?useSSL=false&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true","user":"root","password" :"ldst123"} */;
Agregar desde la fuente de datos:
/*+ mycat:createDataSource{ "name" :"mycatRead" , "url":"jdbc:mysql://localhost:3307/test_mycat?useSSL=false&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true","user":"root","password" :"ldst123"} */;
¡Compruebe si la fuente de datos maestro-esclavo se creó correctamente!
/*+ mycat:showDataSources{} */
El archivo de origen de datos maestro-esclavo generado después del éxito:
mycatWrite:
{
"dbType":"mysql",
"idleTimeout":60000,
"initSqls":[],
"initSqlsGetConnection":true,
"instanceType":"READ_WRITE",
"maxCon":1000,
"maxConnectTimeout":30000,
"maxRetryCount":5,
"minCon":1,
"name":"mycatWrite",
"password":"xxx123",
"queryTimeout":0,
"type":"JDBC",
"url":"jdbc:mysql://localhost:3306/test_mycat?useJDBCCompliantTimezoneShift=true&useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&autoReconnect=true&useSSL=false",
"user":"root",
"weight":0
}
mycatLeer:
{
"dbType":"mysql",
"idleTimeout":60000,
"initSqls":[],
"initSqlsGetConnection":true,
//跟/*+ mycat:showDataSources{} */命令查到的库中属性值不一致?
"instanceType":"READ_WRITE",
"maxCon":1000,
"maxConnectTimeout":30000,
"maxRetryCount":5,
"minCon":1,
"name":"mycatRead",
"password":"xxx123",
"queryTimeout":0,
"type":"JDBC",
"url":"jdbc:mysql://localhost:3307/test_mycat?serverTimezone=Asia/Shanghai&useJDBCCompliantTimezoneShift=true&characterEncoding=UTF-8&useUnicode=true&autoReconnect=true&useSSL=false",
"user":"root",
"weight":0
}
5. Cree información de configuración del clúster.
/*! mycat:createCluster{"name":"mycatCluster","masters":["mycatWrite"],"replicas":["mycatRead"]} */
Consultar información del clúster:
/*+ mycat:showClusters{} */;
Una vez que el clúster se crea correctamente, se genera el archivo:
Ver el archivo mycatCluster.cluster
{
"clusterType":"MASTER_SLAVE",
"heartbeat":{
"heartbeatTimeout":1000,
"maxRetryCount":3,
"minSwitchTimeInterval":300,
"showLog":false,
"slaveThreshold":0.0
},
"masters":[
"mycatWrite"
],
"maxCon":2000,
"name":"mycatCluster",
"readBalanceType":"BALANCE_ALL",
"replicas":[
"mycatRead"
],
"switchType":"SWITCH"
}
6. Una vez finalizado, realice pruebas de funcionamiento en mycat.
Precauciones:
Al iniciar sesión en mycat2 usando cmd, los datos insertados en la tabla están confusos. Puede especificar el juego de caracteres al iniciar sesión:
Al iniciar sesión en mycat en cmd, use mysql -uroot -p en lugar de usar mysql
--default-character-set=utf8 -uroot -p123456 -P8066 para iniciar sesión***