MySQL:Fabric 安装

MySQL Fabric安装

MySQL Fabric是Oracle提供的用于辅助进行ha\sharding的工具,它的基本架构:

从上面看出,借助于Fabric, 可以搭建 HA 集群、Sharing 、HA+Sharding。

应用从fabric中得知各个数据库、表、分区等的映射关系,然后访问相应的mysql 实例。

Fabric由三个组件组成:

1)fabric 的管理工具(也就是 mysqlfabric)。

2)fabric nodes,可以启动1到多个node。每个node也是一个进程。用于处理fabric的管理请求、应用的mapping请求。

3)backstore,它也是一个mysql server,维护了HA Group、Sharding Group。

下载

在mysql 5.6之后的版本,可以使用fabric的对应版本是1.5,在mysql官网上可以直接下载。由于fabric是由python语言编写的,并且内部通信用会用到 mysql-connector- python,所以也要下载对应的python驱动。

我下载的版本是:

mysql-utiltities-1.5.6-1.el6.noarch.rpm
mysql-connector-ptyhon-2.0.4-1.el6.noarch.rpm

安装

1、安装介质

使用操作系统root用户来安装。

先安装mysql-connector-ptyhon,再安装mysql-utilities:

rpm –i mysql-connector-ptyhon-2.0.4-1.el6.noarch.rpm
rpm –i mysql-utiltities-1.5.6-1.el6.noarch.rpm

安装完毕后,会有一个mysqlfabric命令可以使用。所以可以通过该命令来判定是否安装成功。

2、配置文件

在安装好fabric之后,就会有一个默认的配置文件:fabric.cfg。

默认的配置文件的位置:


Platform


Package


Location


Microsoft Windows


mysql-utilities-1.5.6-win32.msi


UTILITIES_INSTALLDIR/etc/mysql/fabric.cfg


Ubuntu Linux 14.04


mysql-utilities_1.5.6-1ubuntu14.04_all.deb


/etc/mysql/fabric.cfg


Debian Linux 6.0


mysql-utilities_1.5.6-1debian6.0_all.deb


/etc/mysql/fabric.cfg


Red Hat Enterprise Linux 6 / Oracle Linux 6


mysql-utilities-1.5.6-1.el6.noarch.rpm


/etc/mysql/fabric.cfg


OS X


mysql-utilities-1.5.6-osx10.9.dmg


/etc/mysql/fabric.cfg

默认的配置文件预览:

[DEFAULT]
prefix = /usr/local
sysconfdir = /usr/local/etc
logdir = /var/log

[storage]
address = localhost:3306
user = fabric_store
password = secret
database = mysql_fabric
auth_plugin = mysql_native_password
connection_timeout = 6
connection_attempts = 6
connection_delay = 1

[servers]
user = fabric_server
password = secret
backup_user = fabric_backup
backup_password = secret
restore_user = fabric_restore
restore_password = secret
unreachable_timeout = 5

[protocol.xmlrpc]
address = localhost:32274
threads = 5
user = admin
password = secret
disable_authentication = no
realm = MySQL Fabric
ssl_ca =
ssl_cert =
ssl_key =

[protocol.mysql]
address = localhost:32275
user = admin
password = secret
disable_authentication = no
ssl_ca =
ssl_cert =
ssl_key =

[executor]
executors = 5

[logging]
level = INFO
url = file:///var/log/fabric.log

[sharding]
mysqldump_program = /usr/bin/mysqldump
mysqlclient_program = /usr/bin/mysql

[statistics]
prune_time = 3600

[failure_tracking]
notifications = 300
notification_clients = 50
notification_interval = 60
failover_interval = 0
detections = 3
detection_interval = 6
detection_timeout = 1
prune_time = 3600

[connector]
ttl = 1

在这个配置文件中,会涉及到很多种帐户:
·backstore

在[storage]区域,用来配置backstore mysql server的信息。所以这里配置的就是backstore mysql server的操作帐户。

该用户必需的权限:

ALTER              - alter some database objectsCREATE             - create most database objectsCREATE VIEW        - create viewsDELETE             - delete rowsDROP               - drop most database objects
EVENT              - manage eventsREFERENCES         - foreign keysINDEX              - create indexesINSERT             - insert rowsSELECT             - select rowsUPDATE             - update rows

·server

在[servers]区域配置的,是所有的受管mysql server的帐户。

该用户必需的权限:

其中全局满围的权限:

DELETE             - prune_shard
PROCESS            - list sessions to killRELOAD             - RESET SLAVEREPLICATION CLIENT - SHOW SLAVE STATUSREPLICATION SLAVE  - SHOW SLAVE HOSTS

其中Fabric 数据库的权限:

ALTER              - alter some database objectsCREATE             - create most database objectsDELETE             - delete rowsDROP               - drop most database objectsINSERT             - insert rowsSELECT             - select rowsUPDATE             - update rows

·backup

在[servers]区域配置的,它是所有的受管mysql server上用于backup的帐户。例如执行mysqldump。

该用户的权限:

EVENT              - show event informationEXECUTE            - show routine information inside viewsREFERENCES         - foreign keysSELECT             - read data
SHOW VIEW          - SHOW CREATE VIEWTRIGGER            - show trigger information

·restore

在[servers]区域配置的,它是所有的受管mysql server上用于restore的帐户。Restore 用户可以使用mysql client执行restore操作。

该用户的权限:

ALTER              - ALTER DATABASEALTER ROUTINE      - ALTER {PROCEDURE|FUNCTION}CREATE             - CREATE TABLECREATE ROUTINE     - CREATE {PROCEDURE|FUNCTION}CREATE TABLESPACE  - CREATE TABLESPACECREATE VIEW        - CREATE VIEWDROP               - DROP TABLE (used before CREATE TABLE)
EVENT              - DROP/CREATE EVENTINSERT             - write data
LOCK TABLES        - LOCK TABLES (--single-transaction)REFERENCES         - Create tables with foreign keysSELECT             - LOCK TABLES (--single-transaction)SUPER              - SET @@SESSION.SQL_LOG_BIN = 0TRIGGER            - CREATE TRIGGER

·admin 

在[protocol.mysql]、[protocol.xmlrpc]中配置的admin用户,是Fabric 的客户端(包括mysqlfabric、使用jdbc驱动的应用等) 与fabric node交互使用的用户、密码。

在使用mysqlfabric时,可以使用默认的配置文件,也可以使用自定义的配置文件。不管使用哪个配置文件,相关的配置项都是要配的。

3、创建backstore 帐户

创建一个mysql 实例作为fabric 的backstore。然后创建一个fabric backstore帐户。

CREATE USER ‘fabric_store‘@‘localhost‘
   IDENTIFIED BY ‘secret‘;GRANT ALTER, CREATE, CREATE VIEW, DELETE, DROP, EVENT,   INDEX, INSERT, REFERENCES, SELECT, UPDATE ON mysql_fabric.*
   TO ‘fabric_store‘@‘localhost‘;

创建的这个用户名、密码要跟配置文件fabric.cfg中[storeage]区域中的user、password相同。

此时fabric数据库还没有创建,但是也不要自己去创建。

4、初始化fabric数据库、表

使用mysqlfabric初始化:

mysqlfabric manage setup

如果要使用自定义的fabric.cfg配置文件:

mysqlfabric --config=/your/fabric/cfg/path manage setup

5、mysqlfabric命令

1)启动fabric节点

mysqlfabric --config=/your/fabric/cfg/path manage start

2)停止fabric节点

mysqlfabric --config=/your/fabric/cfg/path manage stop

至于其它命令,可以参考官方文档。

时间: 2024-10-11 22:32:17

MySQL:Fabric 安装的相关文章

Mysql高可用 - Fabric安装配置

Fabric简介 mysql fabric是oracle推出的,它可以简化管理mysql集群,提供两大特性: 1  通过故障检测和故障转移提供高可用 2  通过自动数据分片实现可扩展性 Fabric前提条件 MySQL server 5.6.10 or later for Fabric MySQL servers.(fabric是基于mysql 5.6的新特性gtid实现的) MySQL server 5.6.x or later for the backing store. Python 2

MySQL Fabric高可用配置

1.架构说明 主机  IP 作用 node10 192.168.1.209 MySQL主机 node09 192.168.1.208 MySQL从机 node08 192.168.1.207 MySQL从机 node06 192.168.1.205 Fabric主机,MySQL 5.7 注:node10\node09\node08的主从已经配置过程略过 2.下载工具包 mkdir soft cd soft wget http://dev.mysql.com/get/Downloads/Conne

mysql fabric基础测试

IP规划 主:192.168.1.2, 从:192.168.1.4, 管理主机:192.168.1.5 管理主机要安装mysql-connector-python和mysql-utilities Mysql-python连接器下载地址:http://dev.mysql.com/downloads/connector/python/ rpm -ivh mysql-connector-python-2.0.4-1.el6.src.rpm # wget -c http://dev.mysql.com/

MySQL Fabric部署

架构描述: 一台主机上安装4个MySQL 服务,其中一个MySQL服务用于存储MySQL Fabric后台数据:另外3个MySQL服务用于主从架构测试.一个主+两个从. 第一部分:二进制方式安装MySQL 5.6.19 1.        操作系统 CentOS release 6.2 (Final) 2.        创建用户和组 [[email protected] ~]# groupadd mysql [[email protected] ~]# useradd -r -g mysqlm

Mysql Fabric实现学习笔记(转载)

Mysql Fabric用来管理mysql服务,提供扩展性和容易使用的系统,管理mysql分片和高可用部署(当前实现了两个特性:高可用和使用数据分片的横向扩展,能单独使用或结合使用这两个特性.). 架构图: 应用请求一个扩展的mysql连接器版本,使用XML-RPC协议访问Fabric,当前可以使用python和J连接器.Fabric管理启动GTIDs(全局事务标识)的mysql集合,检查和维护服务器之间的一致性.集合中的服务器叫高可用组.不属于Fabric高可用组的成员实例,叫备用存储(bac

Windows下MySQL下载安装、配置与使用

用过MySQL之后,不论容量的话,发现比其他两个(sql server .oracle)好用的多,一下子就喜欢上了.下面给那些还不知道怎么弄的童鞋们写下具体的方法步骤. (我这个写得有点太详细了,甚至有些繁琐,有很多步骤在其他的教程文档里都是省略掉的,但我还是要写出来,因为我当时走了很多弯路,我希望你们能够避免我走的这些弯路.当然,知道同学的可以略过,选择你想知道的地方看) 第一大步:下载.(不需要注册也可以下载,直接点下面的no thanks) a.俗话说:“巧妇难为无米之炊”嘛!我这里用的是

CentOS6.5 - yum对Mysql的安装与配置

一.mysql的安装 1.查看是否安装mysql [[email protected] ~]# rpm -qa | grep mysql 如果有进行卸载(以下三种方式选一种即可): 1)rpm -e mysql-libs-5.1.71-1.el6.x86_64 //普通删除模式 2)rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64 // 强力删除模式,如果使用上面命令1)删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除(推荐) 3)yum

mysql的安装和基本配置

一.mysql的安装和基本配置 1 安装cmake #./configure#make &&make install 2 安装mysql# yum install ncurses* bison*   # cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/database/mydata -DSYSCONFDIR=/etc -DTMPDIR=/tmp -DWITH_INNOBASE_STORAGE_ENGINE=1 -

Python 3 mysql 简介安装

Python 3 mysql 简介安装 一.数据库是什么 1.  什么是数据库(DataBase,简称DB) 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据库中的数据按一定的数字模型组织.描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并且可为各种用户共享. 2.什么是数据(Data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机 在计算机中