[root@wallet01 ~]# mysql -uroot -p
Enter password:
mysql> grant all privileges on *.* to 'root'@'wallet01' identified by 'abcd@1234';
Query OK, 0 rows affected, 1 warning (0.05 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.06 sec)
[root@wallet01 ~]# yum install -y mysql-shell
[root@wallet01 ~]# mysqlsh --log-level=DEBUG3
MySQL Shell 8.0.18
Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
Type '\help' or '\?' for help; '\quit' to exit.
MySQL JS > shell.connect('root@wallet01:3306')
Creating a session to 'root@wallet01:3306'
Please provide the password for 'root@wallet01:3306': *********
Save password for 'root@wallet01:3306'? [Y]es/[N]o/Ne[v]er (default No): y
Fetching schema names for autocompletion... Press ^C to stop.
Your MySQL connection id is 290
Server version: 5.7.27-log MySQL Community Server (GPL)
No default schema selected; type \use to set one.
MySQL wallet01:3306 JS > var cluster = dba.createCluster('walletCluster', {adoptFromGR: true})
A new InnoDB cluster will be created based on the existing replication group on instance
'wallet01:3306'.
Creating InnoDB cluster 'walletCluster' on 'wallet01:3306'...
Adding Seed Instance...
Adding Instance 'wallet03:3306'...
Adding Instance 'wallet01:3306'...
Adding Instance 'wallet02:3306'...
Resetting distributed recovery credentials across the cluster...
Cluster successfully created based on existing replication group.
MySQL wallet01:3306 JS > cluster.status();
{
"clusterName": "walletCluster",
"defaultReplicaSet": {
"name": "default",
"primary": "wallet01:3306",
"ssl": "DISABLED",
"status": "OK",
"statusText": "Cluster is ONLINE and can tolerate up to ONE failure.",
"topology": {
"wallet01:3306": {
"address": "wallet01:3306",
"mode": "R/W",
"readReplicas": {},
"role": "HA",
"status": "ONLINE"
},
"wallet02:3306": {
"address": "wallet02:3306",
"mode": "R/O",
"readReplicas": {},
"role": "HA",
"status": "ONLINE"
},
"wallet03:3306": {
"address": "wallet03:3306",
"mode": "R/O",
"readReplicas": {},
"role": "HA",
"status": "ONLINE"
}
},
"topologyMode": "Single-Primary"
},
"groupInformationSourceMember": "wallet01:3306"
}
MySQL wallet01:3306 JS > \quit
Bye!
[root@wallet04 ~]# yum install -y mysql-router
[root@wallet04 ~]# mysqlrouter --bootstrap root@wallet01:3306 --user=mysqlrouter --name=router01
Please enter MySQL password for root:
WARNING: The MySQL server does not have SSL configured and metadata used by the router may be
transmitted unencrypted.
# Reconfiguring system MySQL Router instance...
- Checking for old Router accounts
- No prior Router accounts found
- Creating mysql account 'mysql_router1_a8933v9tcn8v'@'%' for cluster management
- Storing account in keyring
- Adjusting permissions of generated files
- Creating configuration /etc/mysqlrouter/mysqlrouter.conf
# MySQL Router 'router01' configured for the InnoDB cluster 'walletCluster'
After this MySQL Router has been started with the generated configuration
$ /etc/init.d/mysqlrouter restart
or
$ mysqlrouter -c /etc/mysqlrouter/mysqlrouter.conf
the cluster 'walletCluster' can be reached by connecting to:
## MySQL Classic protocol
- Read/Write Connections: localhost:6446
- Read/Only Connections: localhost:6447
## MySQL X protocol
- Read/Write Connections: localhost:64460
- Read/Only Connections: localhost:64470
Existing configuration backed up to '/etc/mysqlrouter/mysqlrouter.conf.bak'
[root@wallet04 ~]# /etc/init.d/mysqlrouter start
Starting mysqlrouter: [ OK ]
[root@wallet04 ~]# /etc/init.d/mysqlrouter status
mysqlrouter (pid 24451) is running...