MySQL ROUTER安装部署

MySQL ROUTER安装部署

在前一篇文章,测试安装了MySQL MGR集群,在磁盘文章中通过测试MySQL router实现VIP的功能和读写分离。

总体设计架构如下图

复制代码
[root@mgrouter bin]# adduser mgrrouter
[root@mgrouter bin]# ./mysqlrouter --bootstrap root@192.168.56.104:3309 --directory /opt/mysql_router/mgrrouter/data  --name='gsprouter' --user=mgrrouter --force-password-validation
Please enter MySQL password for root: 
Error: Unable to connect to the metadata server: Error connecting to MySQL server at 192.168.56.104:3309: Access denied for user 'root'@'192.168.56.107' (using password: YES) (1045)
[root@mgrouter bin]# ./mysqlrouter --bootstrap mgrouter@192.168.56.104:3309 --directory /opt/mysql_router/mgrrouter/data  --name='gsprouter' --user=mgrrouter --force-password-validation
Please enter MySQL password for mgrouter: 
Error: Expected MySQL Server '192.168.56.104:3309' to contain the metadata of MySQL InnoDB Cluster, but the schema does not exist.
Checking version of the metadata schema failed with: Error executing MySQL query "SELECT * FROM mysql_innodb_cluster_metadata.schema_version": Unknown database 'mysql_innodb_cluster_metadata' (1049)

See https://dev.mysql.com/doc/mysql-shell/en/deploying-production-innodb-cluster.html for instructions on setting up a MySQL Server to act as an InnoDB Cluster Metadata server

[root@mgrouter bin]# 


#########################
mysql router安装配置


##下载安装

##解压
mv mysql-router-8.0.27-linux-glibc2.12-x86_64 /usr/local/
ln -s mysql-router-8.0.27-linux-glibc2.12-x86_64/ mysql-router

##安装目录:
mkdir -p /opt/mysqlrouter/data
mkdir -p /opt/mysqlrouter/log
mkdir -p /opt/mysqlrouter/run
mkdir -p /opt/mysqlrouter/config

cp /usr/local/mysql-router/share/doc/mysqlrouter/sample_mysqlrouter.conf /opt/mysqlrouter/config/mysqlrouter.conf

##添加环境变量
vi /etc/profile 

export PATH=/usr/local/mysql-router/bin:$PATH

source /etc/profile 

##读写分离配置

vi /opt/mysqlrouter/config/mysqlrouter.conf

chown mysql.mysql /opt/mysqlrouter/config/mysqlrouter.conf
 
[DEFAULT]
logging_folder         = /opt/mysql_router/mgrrouter/log
plugin_folder          = /opt/mysql_router/mgrrouter/lib/mysqlrouter
config_folder          = /opt/mysql_router/mgrrouter/config
runtime_folder         = /opt/mysql_router/mgrrouter/run
data_folder            = /opt/mysql_router/mgrrouter/data

client_connect_timeout = 2
connect_timeout        = 2
read_timeout           = 30
max_connections        = 512

[logger]
level = INFO
timestamp_precision = second
 
[routing:primary]
bind_address = 192.168.56.107
bind_port = 7001
destinations = 192.168.56.104:3309,192.168.56.105:3309,192.168.56.106:3309
routing_strategy = first-available
mode = read-write

[routing:secondary]
bind_address = 192.168.56.107
bind_port = 7002
destinations = 192.168.56.105:3309,192.168.56.106:3309
routing_strategy = round-robin
mode = read-only


##启动 router 
/opt/mysql_router/mgrrouter/bin/mysqlrouter -c /opt/mysql_router/mgrrouter/config/mysqlrouter.conf &


##创建远程测试访问用户
CREATE USER root@'%' IDENTIFIED WITH sha256_password BY 'root';
GRANT REPLICATION SLAVE ON *.* TO root@'%';
GRANT all ON *.* TO root@'%';

FLUSH PRIVILEGES;

###登录测试验证
mysql -h 192.168.56.70 -uroot -proot -P 7002 -e "select @@hostname, @@read_only, @@super_read_only"
相关推荐
S1998_1997111609•X13 分钟前
论mysql国盾shell-sfa犯罪行为集团下的分项工程及反向注入原理尐深度纳米算法下的鐌檵鄐鉎行为
网络·数据库·网络协议·百度·开闭原则
一起搞IT吧1 小时前
相机Camera日志实例分析之二十:相机Camx【照片后置4800/5000/6400万拍照】单帧流程日志详解
android·嵌入式硬件·数码相机·智能手机
KmSH8umpK1 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第七篇
数据库·redis·分布式
jinanwuhuaguo2 小时前
(第三十三篇)五月的文明奠基:OpenClaw 2026.5.2版本的文明级解读
android·java·开发语言·人工智能·github·拓扑学·openclaw
BU摆烂会噶2 小时前
【LangGraph】持久化实现的三大能力——时间旅行
数据库·人工智能·python·postgresql·langchain
l1t3 小时前
DeepSeek总结的DuckLake 入门
数据库
Joseph Cooper3 小时前
RAG 与 AI Agent:智能体真的需要检索增强生成吗?
数据库·人工智能·ai·agent·rag·上下文工程
light blue bird3 小时前
主子端台二分法任务汇总组件
前端·数据库·.net·桌面端winform
DevilSeagull4 小时前
MySQL(2) 客户端工具和建库
开发语言·数据库·后端·mysql·服务
小李来了!4 小时前
Navicate/plsql连接Oracle数据库教程
数据库·oracle