这篇文章主要为大家展示了“如何使用MySQL Fabric实现高可用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用MySQL Fabric实现高可用”这篇文章吧。
从 http://dev.mysql.com/downloads/utilities/ 下载 MySQL Utilities 1.5 ,MySQL Fabric 是 MySQL Utilities 1.5 的一部分。
从 http://dev.mysql.com/downloads/connector/j/ 下载 java connector,5.1.30 和之后的版本支持 MySQL Fabric。
需要为 MySQL Fabric 在每个 MySQL 实例上创建用户。在集群实例上创建用户过程中需要关闭 bin log,否则 MySQL Fabric 创建主从关系的时候会在 slave 上重新执行 master 中创建同一用户的操作而导致出错。以下示例中假设 MySQL Fabric 和 backing store 实例安装在同一台服务器中:
在 backing store 实例上创建 store user,将下面代码中的 fabric_store 和 secret_store 替换为合适的用户名和密码。
CREATE USER 'fabric_store'@'localhost'
在每个集群实例上创建 server user,将下面代码中的 fabric_server 和 secret_server 替换为合适的用户名和密码。
CREATE USER 'fabric_server'@'%'
在每个集群实例上创建 backup user,将下面代码中的 fabric_backup 和 secret_backup 替换为合适的用户名和密码。
CREATE USER 'fabric_backup'@'%'
在每个集群实例上创建 restore user,将下面代码中的 fabric_restore 和 secret_restore 替换为合适的用户名和密码。
CREATE USER 'fabric_restore'@'%'
在每个集群实例中启用 gtid-mode, bin-log 和 log-slave-updates ,并确保所有集群实例的 server-id 都不重复。
[mysqld]
修改 /etc/mysql/fabric.cfg 中的 [storage] 和 [servers] 段,配置 store user, server user, backup user 和 restore user 的用户和密码。
[storage]
执行 mysqlfabric manage setup 初始化 store server,执行过程中需要设置 admin/xmlrpc 的密码,这个密码是使用用户名 admin 访问 MySQL Fabric 时使用的密码。可以将这个密码配置到 fabric.cfg 中 [protocol.xmlrpc] 段的 password 中,否则后面每次执行 MySQL Fabric 命令都会提示输入这个密码。
执行 mysqlfabric manage start 启动 MySQL Fabric。
执行 mysqlfabric manage stop 停止 MySQL Fabric。
执行 mysqlfabric group create my_group 创建服务器组,其中 my_group 为组名。
执行 mysqlfabric group add my_group master_server:port 添加主服务器,其中master_server:port 为主服务器的 IP 和端口。
执行 mysqlfabric group promote my_group 将主服务器提升为服务器组的 master。
执行 mysqlfabric group add my_group slave_server:port 添加从服务器,其中slave_server:port 为从服务器的 IP 和端口,添加之后从服务器会自动同步主服务器上已经写入 bin log 的数据。
执行 mysqlfabric group activate my_group 激活故障自动切换。
mysqlfabric group lookup_servers ys_group
服务器出现故障之后,MySQL Fabric 中会将其标记为 FAULTY 状态,在服务器恢复之后状态不会自动恢复,需要人工将出错的服务器从组中移除再重新加入。
`shell>mysqlfabric group remove my_group server:port`
以 Tomcat datasource 配置为例,从直接连接切换成通过 MySQL Fabric 连接 MySQL 只需修改driverClassName 和 url :
driverClassName="com.mysql.fabric.jdbc.FabricMySQLDriver"
其中 localhost:32274 是 MySQL Fabric 的服务地址,fabricUsername 和 fabricPassword 是 MySQL Fabric 的用户名和密码,database 是默认数据库名称,fabricServerGroup 是服务器组名称。
以上是“如何使用MySQL Fabric实现高可用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。