server.xml
是 MyCat 服务器的主要配置文件,它包含了 MyCat 服务启动的各种基础配置信息,比如网络配置、系统参数、数据源、线程池、系统日志等。以下是一个简化的 server.xml
示例及其各部分详解:
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "server.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!-- 全局配置 -->
<system>
<property name="sequnceHandlerType">2</property>
<property name="processorBufferChunkSize">4096</property>
<!-- 更多全局配置项... -->
</system>
<!-- 数据源配置 -->
<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql">
<heartbeat>select user()</heartbeat>
<writeHost host="hostM1" url="localhost:3306" user="root" password="password"/>
<readHost host="hostS1" url="localhost:3307" user="root" password="password" />
</dataHost>
<!-- 端口监听配置 -->
<serverPort>8066</serverPort>
<managerPort>9066</managerPort>
<idleCheckPeriod>60000</idleCheckPeriod>
<backendFlushTimeout>180000</backendFlushTimeout>
<!-- 日志配置 -->
<log>
<level>INFO</level>
<consoleLogPattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</consoleLogPattern>
<!-- 日志文件路径及格式配置 -->
</log>
<!-- 系统模块配置 -->
<system>
<!-- MyCat 内部线程池配置 -->
<transactionPool>
<!-- ... -->
</transactionPool>
<!-- 其他系统模块配置 -->
</system>
<!-- Schema 配置引用 -->
<include file="schema.xml"/>
</mycat:schema>
详解:
-
全局配置:
sequenceHandlerType
:定义全局序列处理器类型。processorBufferChunkSize
:处理器缓冲区大小。
-
数据源配置:
dataHost
:定义数据主机,包括主库(writeHost)和从库(readHost)的信息,如连接数上限、下限、负载均衡策略、数据库类型、心跳检测SQL等。
-
端口监听配置:
serverPort
:MyCat 服务对外提供的 SQL 访问端口。managerPort
:MyCat 管理工具的控制台端口。idleCheckPeriod
:空闲连接检查周期。backendFlushTimeout
:后台刷盘超时时间。
-
日志配置:
log
:定义日志级别、输出格式和日志文件路径等。
-
系统模块配置:
transactionPool
:定义事务线程池的相关参数。
-
Schema 配置引用:
include
:引入schema.xml
文件,定义逻辑数据库架构和表规则等。
在实际使用中,请根据自己的服务器资源、数据库集群规模和业务需求调整这些配置参数。同时,还有更多的配置选项可供定制,以便优化 MyCat 的性能和功能。