lfabric.localdomain
mysql> GRANT ALL ON *.* TO 'fabric'@' mysqlfabric.localdomain';
Query OK, 0 rows affected (0.00 sec)?
mysql> SET PASSWORD FOR 'fabric'@' mysqlfabric.localdomain' = PASSWORD('fabric');
Query OK, 0 rows affected (0.00 sec)?
[root@mysqlfabric mysql_3003]# mysql -uroot-P3002 -p -h mysqlfabric.localdomain?
mysql> GRANT ALL ON *.* TO 'fabric'@' mysqlfabric.localdomain';
Query OK, 0 rows affected (0.00 sec)?
mysql> SET PASSWORD FOR 'fabric'@' mysqlfabric.localdomain' = PASSWORD('fabric');
Query OK, 0 rows affected (0.00 sec)
[root@mysqlfabric mysql_3003]# mysql -uroot-P3003 -p -h mysqlfabric.localdomain?
mysql> GRANT ALL ON *.* TO 'fabric'@' mysqlfabric.localdomain';
Query OK, 0 rows affected (0.00 sec)?
mysql> SET PASSWORD FOR 'fabric'@' mysqlfabric.localdomain' = PASSWORD('fabric');
Query OK, 0 rows affected (0.00 sec)?
l 配置文件
打开配置文件/etc/mysql/fabric.cfg
[root@mysqlfabric soft]# vi/etc/mysql/fabric.cfg
修改[storage]部分信息:
[storage]
auth_plugin = mysql_native_password
database = fabric
user = fabric
address = mysqlfabric.localdomain:3306
connection_delay = 1
connection_timeout = 6
password =fabric
connection_attempts = 6?
[sharding]
mysqldump_program =/opt/mysql/bin/mysqldump
mysqlclient_program =/opt/mysql/bin/mysql?
4. 填充MySQL Fabric后台存储数据(创建库和表)
[root@mysqlfabric mysql]# mysqlfabric manage setup--param=storage.user=fabric --param=storage.password=fabric
[INFO] 1404205520.480905 - MainThread -Initializing persister: user (fabric), server (mysqlfabric.localdomain:3306),database (fabric).
Finishing initial setup
=======================
Password for admin user is not yet set.
Password for admin/xmlrpc:
Repeat Password: admin
Password set.admin
5. 启动MySQL Fabric节点
[root@mysqlfabric ~]# mysqlfabric managestart
如果想在后台运行,可以加上—daemonize选项?
停止方式:
[root@mysqlfabric ~]# mysqlfabric managestop?
6. 配置MySQL Fabric用于主从复制
l 创建组
[root@mysqlfabric ~]# mysqlfabric groupcreate my_group
Password for admin:
Procedure :
{ uuid = d7d4581c-a819-47c2-ad31-37c5390e93bd,
finished = True,
success = True,
return = True,
activities =
}?
l 把MySQL服务添加到组
错误信息:
[root@mysqlfabric ~]# mysqlfabric group addmy_group mysqlfabric.localdomain:3001
Procedure :
{ uuid = 5c373b82-d369-413d-a2e0-5b4c60d506c0,
finished = True,
success = False,
return = ServerError: Server (be642e20-00d3-11e4-8d96-0050568f7be4)does not have the binary log or gtid enabled.,
activities =
}?
正确信息:
[root@mysqlfabric mysql_3003]# mysqlfabricgroup add my_group mysqlfabric.localdomain:3001
Procedure :
{ uuid = baafd4d2-dba8-4863-9a76-74a3e6153065,
finished = True,
success = True,
return = True,
activities =
}?
[root@mysqlfabric mysql_3003]# mysqlfabric group add my_groupmysqlfabric.localdomain:3002
Procedure :
{ uuid = 2f336426-b12d-4bd2-ab71-0b6c9d513466,
finished = True,
success = True,
return = True,
activities =
}?
[root@mysqlfabric mysql_3003]# mysqlfabric group add my_groupmysqlfabric.localdomain:3003
Procedure :
{ uuid = 844eba0a-a7bc-4e67-8359-3ab53d0520c7,
finished = True,
success = True,
return = True,
activities =
}
l 把组内一个MySQL服务提升为一个master:
添加MySQL服务到组后,Fabric不会意识到任何主从复制的架构,必须提升组内任何一个MySQL服务为主master,其它服务设置为slave。提升命令如下:
[root@mysqlfabric ~]# mysqlfabric grouppromote my_group?
当组内有一个主master时,新添加到组内的新MySQL服务将自动成为slave。
也可以使用同样的命令使组内的mast